0001200375-25-000006.txt : 20250514 0001200375-25-000006.hdr.sgml : 20250514 20250514161718 ACCESSION NUMBER: 0001200375-25-000006 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 79 CONFORMED PERIOD OF REPORT: 20250331 FILED AS OF DATE: 20250514 DATE AS OF CHANGE: 20250514 FILER: COMPANY DATA: COMPANY CONFORMED NAME: CODEXIS, INC. CENTRAL INDEX KEY: 0001200375 STANDARD INDUSTRIAL CLASSIFICATION: INDUSTRIAL ORGANIC CHEMICALS [2860] ORGANIZATION NAME: 08 Industrial Applications and Services EIN: 710872999 STATE OF INCORPORATION: DE FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-34705 FILM NUMBER: 25945809 BUSINESS ADDRESS: STREET 1: 200 PENOBSCOT DRIVE CITY: REDWOOD CITY STATE: CA ZIP: 94063 BUSINESS PHONE: 650-421-8100 MAIL ADDRESS: STREET 1: 200 PENOBSCOT DRIVE CITY: REDWOOD CITY STATE: CA ZIP: 94063 FORMER COMPANY: FORMER CONFORMED NAME: CODEXIS INC DATE OF NAME CHANGE: 20021022 10-Q 1 cdxs-20250331.htm 10-Q cdxs-20250331
0001200375false2025Q112/319111http://fasb.org/us-gaap/2024#PrimeRateMember325xbrli:sharesiso4217:USDiso4217:USDxbrli:sharescdxs:segmentxbrli:purecdxs:tranche00012003752025-01-012025-03-3100012003752025-05-0900012003752025-03-3100012003752024-12-310001200375us-gaap:ProductMember2025-01-012025-03-310001200375us-gaap:ProductMember2024-01-012024-03-310001200375cdxs:ResearchAndDevelopmentRevenueMember2025-01-012025-03-310001200375cdxs:ResearchAndDevelopmentRevenueMember2024-01-012024-03-3100012003752024-01-012024-03-310001200375us-gaap:CommonStockMember2024-12-310001200375us-gaap:AdditionalPaidInCapitalMember2024-12-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-12-310001200375us-gaap:RetainedEarningsMember2024-12-310001200375us-gaap:CommonStockMember2025-01-012025-03-310001200375us-gaap:AdditionalPaidInCapitalMember2025-01-012025-03-310001200375us-gaap:RetainedEarningsMember2025-01-012025-03-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2025-01-012025-03-310001200375us-gaap:CommonStockMember2025-03-310001200375us-gaap:AdditionalPaidInCapitalMember2025-03-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2025-03-310001200375us-gaap:RetainedEarningsMember2025-03-310001200375us-gaap:CommonStockMember2023-12-310001200375us-gaap:AdditionalPaidInCapitalMember2023-12-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-12-310001200375us-gaap:RetainedEarningsMember2023-12-3100012003752023-12-310001200375us-gaap:CommonStockMember2024-01-012024-03-310001200375us-gaap:AdditionalPaidInCapitalMember2024-01-012024-03-310001200375us-gaap:RetainedEarningsMember2024-01-012024-03-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-01-012024-03-310001200375us-gaap:CommonStockMember2024-03-310001200375us-gaap:AdditionalPaidInCapitalMember2024-03-310001200375us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-310001200375us-gaap:RetainedEarningsMember2024-03-3100012003752024-03-310001200375us-gaap:EMEAMember2025-01-012025-03-310001200375us-gaap:EMEAMember2024-01-012024-03-310001200375srt:AmericasMember2025-01-012025-03-310001200375srt:AmericasMember2024-01-012024-03-310001200375cdxs:APACMember2025-01-012025-03-310001200375cdxs:APACMember2024-01-012024-03-310001200375cdxs:ShortTermUnbilledReceivablesMember2025-03-310001200375cdxs:LongTermUnbilledReceivablesMember2025-03-310001200375cdxs:ShortTermUnbilledReceivablesMember2024-12-310001200375cdxs:LongTermUnbilledReceivablesMember2024-12-3100012003752025-04-01us-gaap:ProductMember2025-03-3100012003752026-01-01us-gaap:ProductMember2025-03-3100012003752027-01-01us-gaap:ProductMember2025-03-3100012003752028-01-01us-gaap:ProductMember2025-03-310001200375us-gaap:ProductMember2025-03-310001200375us-gaap:StockCompensationPlanMember2025-01-012025-03-310001200375us-gaap:StockCompensationPlanMember2024-01-012024-03-310001200375us-gaap:WarrantMember2025-01-012025-03-310001200375us-gaap:WarrantMember2024-01-012024-03-310001200375us-gaap:EmployeeStockMember2025-01-012025-03-310001200375us-gaap:EmployeeStockMember2024-01-012024-03-310001200375cdxs:SeqWellMember2025-03-310001200375cdxs:SeqWellMember2024-12-310001200375us-gaap:OtherAggregatedInvestmentsMember2025-03-310001200375us-gaap:OtherAggregatedInvestmentsMember2024-12-310001200375us-gaap:CashAndCashEquivalentsMember2025-03-310001200375us-gaap:ShortTermInvestmentsMember2025-03-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2025-03-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:MoneyMarketFundsMember2025-03-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:ShortTermInvestmentsMemberus-gaap:MoneyMarketFundsMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CommercialPaperMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:CommercialPaperMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:CommercialPaperMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CorporateDebtSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:CorporateDebtSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:USTreasurySecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:USTreasurySecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:USTreasurySecuritiesMember2025-03-310001200375us-gaap:FairValueInputsLevel2Member2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMember2025-03-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMember2025-03-310001200375us-gaap:CashAndCashEquivalentsMember2024-12-310001200375us-gaap:ShortTermInvestmentsMember2024-12-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:MoneyMarketFundsMember2024-12-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:MoneyMarketFundsMember2024-12-310001200375us-gaap:FairValueInputsLevel1Memberus-gaap:ShortTermInvestmentsMemberus-gaap:MoneyMarketFundsMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CommercialPaperMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:CommercialPaperMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:CommercialPaperMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CorporateDebtSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:CorporateDebtSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:CorporateDebtSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:USTreasurySecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMemberus-gaap:USTreasurySecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMemberus-gaap:USTreasurySecuritiesMember2024-12-310001200375us-gaap:FairValueInputsLevel2Member2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:CashAndCashEquivalentsMember2024-12-310001200375us-gaap:FairValueInputsLevel2Memberus-gaap:ShortTermInvestmentsMember2024-12-310001200375us-gaap:ConvertibleDebtMember2024-01-012024-03-310001200375us-gaap:ConvertibleDebtMember2025-01-012025-03-310001200375cdxs:LaboratoryEquipmentMember2025-03-310001200375cdxs:LaboratoryEquipmentMember2024-12-310001200375us-gaap:LeaseholdImprovementsMember2025-03-310001200375us-gaap:LeaseholdImprovementsMember2024-12-310001200375us-gaap:ComputerEquipmentMember2025-03-310001200375us-gaap:ComputerEquipmentMember2024-12-310001200375cdxs:OfficeEquipmentAndFurnitureMember2025-03-310001200375cdxs:OfficeEquipmentAndFurnitureMember2024-12-310001200375us-gaap:ConstructionInProgressMember2025-03-310001200375us-gaap:ConstructionInProgressMember2024-12-310001200375us-gaap:ResearchAndDevelopmentExpenseMember2025-01-012025-03-310001200375us-gaap:ResearchAndDevelopmentExpenseMember2024-01-012024-03-310001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2025-01-012025-03-310001200375us-gaap:SellingGeneralAndAdministrativeExpensesMember2024-01-012024-03-310001200375us-gaap:EmployeeStockMember2023-04-012023-04-300001200375us-gaap:EmployeeStockMember2023-04-300001200375us-gaap:EmployeeStockMember2025-03-310001200375us-gaap:EmployeeStockMember2025-01-012025-03-310001200375us-gaap:EmployeeStockMember2024-01-012024-03-310001200375us-gaap:CostOfSalesMember2025-01-012025-03-310001200375us-gaap:CostOfSalesMember2024-01-012024-03-310001200375us-gaap:EmployeeStockOptionMember2025-01-012025-03-310001200375us-gaap:EmployeeStockOptionMember2024-01-012024-03-310001200375cdxs:RSUsAndRSAsMember2025-01-012025-03-310001200375cdxs:RSUsAndRSAsMember2024-01-012024-03-310001200375cdxs:PerformanceStockUnitsMember2025-01-012025-03-310001200375cdxs:PerformanceStockUnitsMember2024-01-012024-03-310001200375cdxs:PerformanceBasedOptionsPBOsMember2025-01-012025-03-310001200375cdxs:PerformanceBasedOptionsPBOsMember2024-01-012024-03-310001200375us-gaap:EmployeeStockOptionMember2025-03-310001200375cdxs:RSUsAndRSAsMember2025-03-3100012003752023-02-270001200375cdxs:PiperSandlerCoMember2021-05-012021-05-310001200375cdxs:PiperSandlerCoMembersrt:MaximumMember2021-05-310001200375cdxs:CantorSalesAgreementMember2024-05-022024-05-020001200375cdxs:CantorSalesAgreementMember2024-05-020001200375cdxs:CantorMember2024-01-012024-12-310001200375cdxs:CantorMember2025-01-012025-03-310001200375cdxs:CantorMember2024-03-310001200375us-gaap:IndemnificationGuaranteeMember2024-03-310001200375us-gaap:IndemnificationGuaranteeMember2024-12-310001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2024-02-132024-02-130001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2024-02-130001200375cdxs:InnovatusLoanFirstTrancheMemberus-gaap:SecuredDebtMember2024-02-130001200375cdxs:InnovatusLoanSecondTrancheMemberus-gaap:SecuredDebtMember2024-02-130001200375cdxs:TermLoanMemberus-gaap:SecuredDebtMember2024-02-130001200375cdxs:InnovatusLoanMember2024-02-130001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMembersrt:MaximumMember2024-02-130001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMembersrt:MinimumMember2024-02-130001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2024-03-310001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2025-01-012025-03-310001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2024-01-012024-03-310001200375cdxs:InnovatusLoanMemberus-gaap:SecuredDebtMember2025-03-310001200375cdxs:InnovatusLoanWarrantsMemberus-gaap:SecuredDebtMember2024-02-130001200375cdxs:CustomerAMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2025-01-012025-03-310001200375cdxs:CustomerBMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2025-01-012025-03-310001200375cdxs:CustomerBMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2024-01-012024-03-310001200375cdxs:CustomerCMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2025-01-012025-03-310001200375cdxs:CustomerCMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2024-01-012024-03-310001200375cdxs:CustomerDMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:SalesRevenueProductLineMember2024-01-012024-03-310001200375cdxs:CustomerCMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2025-01-012025-03-310001200375cdxs:CustomerCMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2024-01-012024-12-310001200375cdxs:CustomerEMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2025-01-012025-03-310001200375cdxs:CustomerEMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2024-01-012024-12-310001200375cdxs:CustomerFMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2024-01-012024-12-310001200375cdxs:CustomerGMemberus-gaap:CustomerConcentrationRiskMemberus-gaap:AccountsReceivableMember2024-01-012024-12-310001200375country:US2025-03-310001200375country:US2024-12-310001200375cdxs:KevinNorrettMember2025-01-012025-03-310001200375cdxs:KevinNorrettMember2025-03-31

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, D.C. 20549
FORM 10-Q
(Mark One)
QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934
For the quarterly period ended March 31, 2025
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-34705
___________________________
Codexis, Inc.
(Exact name of registrant as specified in its charter)
_____________________________________________
Delaware 71-0872999
(State or other jurisdiction of incorporation or organization) (I.R.S. Employer Identification No.)
200 Penobscot Drive, Redwood City, California
 94063
(Address of principal executive offices) (Zip Code)


Registrant's telephone number, including area code: (650) 421-8100

Securities registered pursuant to Section 12(b) of the Act:
Title of Each ClassTradingName of Each Exchange on Which Registered
Symbol(s)
Common Stock, par value $0.0001 per shareCDXSThe Nasdaq Global Select Market
Indicate by check mark whether the registrant: (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities 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 filerAccelerated filer
Non-accelerated filerSmaller reporting company
Emerging growth company
If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    Yes      No  
As of May 9, 2025, there were 82,844,849 shares of the registrant’s Common Stock, par value $0.0001 per share, outstanding.





Codexis, Inc.
Quarterly Report on Form 10-Q
For the Quarter Ended March 31, 2025


TABLE OF CONTENTS
 PAGE
NUMBER
PART I. FINANCIAL INFORMATION
ITEM 1.
ITEM 2.
ITEM 3.
ITEM 4.
ITEM 1.
ITEM 1A.
ITEM 2.
ITEM 3.
ITEM 4.
ITEM 5.
ITEM 6.

“Codexis,” the Codexis logo, ECO Synthesis, and other trademarks or service marks of Codexis, Inc., appearing in this Quarterly Report on Form 10-Q are the property of Codexis, Inc. This Quarterly Report on Form 10-Q contains additional trade names, trademarks and service marks of others, which are the property of their respective owners. Solely for convenience, trademarks and trade names referred to in this Quarterly Report on Form 10-Q may appear without the ® or symbols.
2



PART I. FINANCIAL INFORMATION
Item 1. Financial Statements
Codexis, Inc.
Condensed Consolidated Balance Sheets
(Unaudited)
(In Thousands, Except Per Share Amounts)
March 31, 2025December 31, 2024
Assets
Current assets:
Cash and cash equivalents$18,319 $19,264 
Restricted cash, current504 503 
Short-term investments41,462 54,194 
Financial assets:
Accounts receivable6,442 11,920 
Contract assets1,788 4,375 
Unbilled receivables3,406 2,751 
Total financial assets11,636 19,046 
Less: allowances(49)(162)
Total financial assets, net11,587 18,884 
Inventories1,781 1,799 
Prepaid expenses and other current assets4,155 4,128 
Total current assets77,808 98,772 
Restricted cash1,062 1,062 
Investment in non-marketable equity securities2,798 2,798 
Right-of-use assets - Operating leases, net27,986 28,700 
Property and equipment, net15,803 14,197 
Goodwill2,463 2,463 
Other non-current assets967 1,019 
Total assets$128,887 $149,011 
Liabilities and Stockholders' Equity
Current liabilities:
Accounts payable$6,046 $2,838 
Accrued compensation6,387 11,410 
Other accrued liabilities5,117 6,223 
Current portion of lease obligations - Operating leases2,913 2,827 
Deferred revenue438 350 
Total current liabilities20,901 23,648 
Deferred revenue, net of current portion490 100 
Long-term lease obligations - Operating leases27,398 28,163 
Long-term debt29,186 28,905 
Other long-term liabilities1,283 1,268 
Total liabilities79,258 82,084 
Commitments and Contingencies (Note 10)
Stockholders' equity:
Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding
  
Common stock, $0.0001 par value per share; 200,000 shares authorized;
82,841 shares and 81,850 shares issued and outstanding as of March 31, 2025 and December 31, 2024, respectively
8 8 
Additional paid-in capital633,101 629,673 
Accumulated other comprehensive income
14 52 
Accumulated deficit(583,494)(562,806)
Total stockholders' equity49,629 66,927 
Total liabilities and stockholders' equity$128,887 $149,011 

See accompanying notes to the unaudited condensed consolidated financial statements.
3



Codexis, Inc.
Condensed Consolidated Statements of Operations
(Unaudited)
(In Thousands, Except Per Share Amounts)
 Three Months Ended March 31,
 20252024
Revenues:
Product revenue$6,059 $9,551 
Research and development revenue1,484 7,522 
Total revenues7,543 17,073 
Costs and operating expenses:
Cost of product revenue2,732 4,855 
Research and development12,942 11,246 
Selling, general and administrative12,355 12,860 
Total costs and operating expenses28,029 28,961 
Loss from operations(20,486)(11,888)
Interest income751 909 
Interest and other expense, net(942)(516)
Loss before income taxes(20,677)(11,495)
Provision for income taxes11 10 
Net loss$(20,688)$(11,505)
Net loss per share, basic and diluted$(0.25)$(0.16)
Weighted average common stock shares used in computing net loss per share, basic and diluted82,410 69,854 
See accompanying notes to the unaudited condensed consolidated financial statements.
4



Codexis, Inc.
Condensed Consolidated Statements of Comprehensive Loss
(Unaudited)
(In Thousands)
 Three Months Ended March 31,
 20252024
Net loss$(20,688)$(11,505)
Other comprehensive loss:
Unrealized loss on available-for-sale short-term investments, net of tax(38)(16)
Comprehensive loss$(20,726)$(11,521)
See accompanying notes to the unaudited condensed consolidated financial statements.
5



Codexis, Inc.
Condensed Consolidated Statements of Stockholders' Equity
(Unaudited)
(In Thousands)
Common StockAdditional
Paid-in
Capital
Accumulated Other Comprehensive Income (Loss)Accumulated DeficitTotal Stockholders' Equity
Three Months Ended March 31, 2025SharesAmount
Balance as of January 1, 2025
81,850 $8 $629,673 $52 $(562,806)$66,927 
Issuance of common stock upon exercise of stock options339 — 1,049 — — 1,049 
Issuance of common stock upon release of stock awards652 — — — — — 
Stock-based compensation— — 2,379 — — 2,379 
Net loss— — — — (20,688)(20,688)
Other comprehensive loss— — — (38)— (38)
Balance as of March 31, 2025
82,841 $8 $633,101 $14 $(583,494)$49,629 
Common StockAdditional
Paid-in
Capital
Accumulated Other Comprehensive Income (Loss)Accumulated DeficitTotal Stockholders' Equity
Three Months Ended March 31, 2024SharesAmount
Balance as of January 1, 2024
69,905 $7 $584,138 $ $(497,530)$86,615 
Issuance of common stock upon exercise of stock options73 — 143 — — 143 
Issuance of common stock upon release of stock awards576 — — — — — 
Issuance of common stock warrants in connection with debt issuance— — 859 — — 859 
Stock-based compensation— — 3,171 — — 3,171 
Net loss— — — — (11,505)(11,505)
Other comprehensive loss— — — (16)— (16)
Balance as of March 31, 2024
70,554 $7 $588,311 $(16)$(509,035)$79,267 
See accompanying notes to the unaudited condensed consolidated financial statements.
6



Codexis, Inc.
Condensed Consolidated Statements of Cash Flows
(Unaudited)
(In Thousands)
Three Months Ended March 31,
 20252024
Operating activities:
Net loss$(20,688)$(11,505)
Adjustments to reconcile net loss to net cash used in operating activities:
Depreciation and amortization1,195 1,252 
Reduction in the carrying amount of right-of-use assets714 773 
Stock-based compensation2,379 3,171 
Provision (recovery) for credit losses(113) 
Non-cash interest expense281 82 
Amortization of discount on short-term investments(330)(41)
Other non-cash items(3)(10)
Changes in operating assets and liabilities:
Financial assets7,426 5,571 
Inventories18 244 
Prepaid expenses and other assets31 (146)
Accounts payable2,065 (2,038)
Accrued compensation and other accrued liabilities(6,501)(3,875)
Other long term liabilities(750)(996)
Deferred revenue478 (271)
Net cash used in operating activities(13,798)(7,789)
Investing activities:
Purchase of property and equipment(1,256)(1,130)
Proceeds from sale of property and equipment1 11 
Purchases of short-term investments(10,326)(27,444)
Proceeds from maturity of short-term investments23,350  
Net cash provided by (used in) investing activities11,769 (28,563)
Financing activities:
Proceeds from exercises of stock options1,098 281 
Costs incurred in connection with equity sales agreements(13)(60)
Proceeds from long-term debt 29,521 
Payment of debt issuance costs (461)
Net cash provided by financing activities1,085 29,281 
Net decrease in cash, cash equivalents and restricted cash(944)(7,071)
Cash, cash equivalents and restricted cash at the beginning of the period20,829 66,697 
Cash, cash equivalents and restricted cash at the end of the period$19,885 $59,626 
Supplemental disclosure of cash flow information:
Interest paid$432 $147 
Income taxes paid$ $17 
Supplemental non-cash investing and financing activities:
Capital expenditures incurred but not yet paid$2,073 $371 

7



The following table provides a reconciliation of cash, cash equivalents and restricted cash reported within the unaudited condensed consolidated balance sheets as of March 31, 2025 and 2024 to the total of the same such amounts shown above in the unaudited condensed consolidated statements of cash flows:
 March 31,
 20252024
Cash and cash equivalents$18,319 $58,046 
Restricted cash, current and non-current 1,566 1,580 
Total cash, cash equivalents and restricted cash$19,885 $59,626 
This table excludes short-term investments of $41.5 million and $27.5 million as of March 31, 2025 and 2024, respectively. Total cash, cash equivalents, and short-term investments as of March 31, 2025 and 2024 were $59.8 million and $85.5 million, respectively.

See accompanying notes to the unaudited condensed consolidated financial statements.
8



Codexis Inc.

Notes to Condensed Consolidated Financial Statements
(Unaudited)
Note 1. Description of Business
In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.
We discover, develop, enhance, and commercialize novel, high performance enzymes and other classes of proteins leveraging our proprietary CodeEvolver directed evolution technology platform.
The Company's operations are managed and reported to the Chief Executive Officer (“CEO”), our chief operating decision maker (“CODM”), on a consolidated basis as one reportable segment.
Note 2. Basis of Presentation and Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (“GAAP”) and the applicable rules and regulations of the Securities and Exchange Commission (“SEC”) for interim financial information but does not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2024. The condensed consolidated balance sheet at December 31, 2024 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three months ended March 31, 2025 and 2024, are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2024 Annual Report on Form 10-K and are updated below as necessary. There have been no significant changes in our significant accounting policies or critical accounting estimates since December 31, 2024.
The unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of March 31, 2025 and results of operations for the interim periods presented. The interim results are not necessarily indicative of the results for any future interim period or for the entire year.
The unaudited condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, deferred revenue, inventories, valuation of equity investments, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the condensed consolidated financial statements.
Short-term Investments
We classify all marketable debt securities that have effective maturities of three months or less from the date of purchase as cash equivalents and those with effective maturities of greater than three months as short-term investment securities in the condensed consolidated balance sheets. We determine the appropriate classification of our short-term investments at the time of purchase and reevaluate such designation at each balance sheet date. We have classified and accounted for our short-term investments as available-for-sale. After consideration of our risk versus reward objectives, as well as our liquidity requirements, we may sell these debt securities prior to their effective maturities.
9


We carry these short-term investments at fair value, and report the unrealized gains and losses, net of taxes, as a component of stockholders’ equity, except for the changes in allowance for expected credit losses, which are included in “Interest and other expense, net” in the unaudited condensed consolidated statements of operations. We determine any realized gains or losses on the sale of short-term investments on a specific identification method, and we record such gains and losses as a component of “Interest income” in the unaudited condensed consolidated statements of operations.
Short-term investments are reviewed periodically for allowances for credit losses and impairment. When evaluating the investments, the Company reviews factors such as the extent to which the fair value of the security is less than the amortized cost basis, adverse conditions specifically related to the security, the financial condition of the issuer, the Company’s intent to sell, and whether it would be more likely than not that the Company would be required to sell the investments before the recovery of the amortized cost basis.
Accounting Pronouncements
Recently adopted accounting pronouncements
In December 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The amendments in the ASU require public companies, on an annual basis, to provide disclosures of specific categories in the rate reconciliation, as well as disclosure of income taxes paid disaggregated by jurisdiction. The standard was adopted beginning January 1, 2025 on a prospective basis. ASU No. 2023-09 will become effective in the Company’s Annual Report on Form 10-K for the year ending December 31, 2025 and we are continuing to evaluate whether adoption of this standard will have a material impact on our unaudited condensed consolidated financial statements and related disclosures.
Aside from the recently adopted accounting pronouncements described above and recently issued accounting pronouncements not yet adopted and described below, there were no recent accounting pronouncements or changes in accounting pronouncements during the three months ended March 31, 2025, that are of significance or potential significance to us.
Recently issued accounting pronouncements not yet adopted
In November 2024, the FASB issued ASU No. 2024-03, Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses. The amendment in the ASU will require additional disclosures and disaggregation of certain costs and expenses presented on the face of the income statement. In January 2025, the FASB issued ASU 2025-01, “Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40) - Clarifying the Effective Date” to clarify the effective date for non-calendar year-end entities. This guidance is effective for the Company for fiscal years beginning after December 15, 2026. Early adoption is permitted. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In October 2023, FASB issued ASU No. 2023-06, Disclosure Improvements: Codification Amendments in Response to the SEC’s Disclosure Update and Simplification Initiative. The amendments in the ASU are intended to amend certain disclosure and presentation requirements for a variety of topics within the ASC. These amendments align the requirements in the ASC to the removal of certain disclosure requirements set out in Regulation S-X and Regulation S-K, as announced by the SEC. The effective date for each amended topic in the ASC is either the date on which the SEC’s removal of the related disclosure requirement from Regulation S-X or Regulation S-K becomes effective, or on June 30, 2027, if the SEC has not removed the requirements by that date. Early adoption is prohibited. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
Note 3. Revenue Recognition
Disaggregation of Revenue
The following table provides information about disaggregated revenue from contracts with customers by geographic regions. The geographic regions that are tracked are the Americas (United States, Canada, and Latin America), EMEA (Europe, Middle East, and Africa), and APAC (Australia, New Zealand, Southeast Asia, and China).
10


Disaggregated information is as follows (in thousands):
Three Months Ended March 31,
20252024
Primary geographical markets:
EMEA
$3,919 $2,572 
Americas
2,088 7,244 
APAC
1,536 7,257 
Total revenues$7,543 $17,073 
Contract Balances
The following table presents balances of contract assets, unbilled receivables, and contract liabilities (in thousands):
March 31, 2025December 31, 2024
Contract assets$1,788 $4,375 
Unbilled receivables$3,849 $3,208 
Contract liabilities: deferred revenue$928 $450 
We had no asset impairment charges related to financial assets in the three months ended March 31, 2025 and 2024.
The decrease in contract assets was primarily due to decreases in product revenue from contracts subject to over time revenue recognition. The increase in unbilled receivables was primarily due to the timing of billings. The increase in deferred revenue was primarily due to the timing of recognition of revenue.
As of March 31, 2025, we have $3.4 million of short-term unbilled receivables presented as unbilled receivables within current assets and $0.4 million of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets. As of December 31, 2024, we had $2.8 million of short-term unbilled receivables presented as unbilled receivables within current assets and $0.5 million of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets.
We recognized the following revenues (in thousands):
Three Months Ended March 31,
Revenue recognized in the period for:20252024
Amounts included in contract liabilities at the beginning of the period:
Performance obligations satisfied$250 $371 
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods387 189 
Performance obligations satisfied from new activities in the period - contract revenue6,906 16,513 
Total revenues$7,543 $17,073 
Performance Obligations
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of March 31, 2025.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts as of March 31, 2025 (in thousands):
Remainder of 2025
20262027
2028 and Thereafter
Total
Product revenue$428 $140 $40 $320 $928 
11


Note 4. Net Loss per Share
Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards (“RSAs”) subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock shares outstanding, less RSAs subject to forfeiture, plus all additional common shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For all periods presented, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.
Anti-Dilutive Securities
In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect.
The following shares were not considered in the computation of diluted net loss per share because their effect was anti-dilutive (in thousands):
 Three Months Ended March 31,
 20252024
Shares issuable under the Equity Incentive Plan and ESPP(1)
13,80013,105
Warrants(2)
424424
Total potentially dilutive securities14,22413,529
(1) Included 386,635 and 568,224 of anti-dilutive potential common shares from ESPP for the three months ended March 31, 2025 and 2024, respectively.
(2) Pertains to the warrants issued in connection with the Innovatus Loan. For additional information, see Note 11, “Debt.”
Note 5. Investments in Non-Marketable Securities
Non-Marketable Equity Securities
Our non-marketable equity securities are investments in privately held companies without readily determinable market value and primarily relate to our investments in seqWell Inc. (“seqWell”) and other investments in non-marketable equity securities. These investments are accounted for under the measurement alternative and are measured at cost minus impairment, if any, plus or minus changes resulting from observable price changes for identical or similar securities of the same issuer. Non-marketable equity securities are measured at fair value on a non-recurring basis and classified within Level 2 in the fair value hierarchy when we estimate the fair value of these investments using the observable transaction price paid by third party investors for the same or similar security of the same issuers. The fair value of non-marketable equity securities are classified within Level 3 when we estimate fair value using unobservable inputs such as when we remeasure due to impairment and we use discount rates, market data of comparable companies, and rights and obligations of the securities the Company holds, among others. We adjust the carrying value of non-marketable equity securities which have been remeasured during the period and recognize resulting gains or losses as a component of interest and other expense, net in the unaudited condensed consolidated statements of operations.
There was no remeasurement event for our investments in non-marketable equity securities that occurred during the three months ended March 31, 2025 and 2024. We recognized no realized gains or losses during the three months ended March 31, 2025 and 2024.
The following table presents the carrying value of our non-marketable equity securities (in thousands):
 March 31, 2025December 31, 2024
seqWell$2,416 $2,416 
Other investments in non-marketable equity securities382 382 
Total non-marketable equity securities$2,798 $2,798 
12


Note 6. Fair Value Measurements
The following tables show the Company’s cash, cash equivalents, and short-term investments by significant investment category as of March 31, 2025 and December 31, 2024 (in thousands):
March 31, 2025
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$4,391 $— $— $4,391 $4,391 $ 
Level 1:
Money market funds
6,209   6,209 6,209  
Level 2(1):
Commercial paper15,123 2 (2)15,123 7,719 7,404 
Corporate debt11,244 2 (8)11,238  11,238 
U.S. agency securities1,995 1  1,996  1,996 
U.S. treasury securities20,805 19  20,824  20,824 
Subtotal49,167 24 (10)49,181 7,719 41,462 
Total$59,767 $24 $(10)$59,781 $18,319 $41,462 
December 31, 2024
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$3,284 $— $— $3,284 $3,284 $ 
Level 1:
Money market funds
15,980   15,980 15,980  
Level 2(1):
Commercial paper6,768 1  6,769  6,769 
Corporate debt17,187 8 (15)17,180  17,180 
U.S. agency securities1,989 2  1,991  1,991 
U.S. treasury securities28,198 56  28,254  28,254 
Subtotal54,142 67 (15)54,194  54,194 
Total$73,406 $67 $(15)$73,458 $19,264 $54,194 
(1) The valuation techniques used to measure the fair values of the Company’s Level 2 financial instruments uses inputs that are either directly or indirectly observable for the asset through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.
We limit the credit risk associated with our cash equivalents and short-term investments by placing them with banks and institutions we believe are highly credit-worthy and investing in highly-rated investments. As of March 31, 2025 and December 31, 2024, the contractual maturity of all investments held was less than one year.
During the three months ended March 31, 2025 and 2024, we did not recognize any significant credit losses nor other-than-temporary impairment losses on our short-term investments.
Note 7. Balance Sheet Details
Inventories
Inventories consisted of the following (in thousands):
March 31, 2025December 31, 2024
Work in process$ $29 
Finished goods1,781 1,770 
Total inventories
$1,781 $1,799 

13


Prepaid expenses and other current assets
As of March 31, 2025, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million. As of December 31, 2024, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million.
Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
March 31, 2025December 31, 2024
Laboratory equipment$36,198 $35,949 
Leasehold improvements14,256 12,159 
Computer equipment and software2,534 2,459 
Office equipment and furniture1,164 1,124 
Construction in progress3,223 3,441 
Property and equipment57,375 55,132 
Less: accumulated depreciation and amortization(41,572)(40,935)
Property and equipment, net$15,803 $14,197 
Depreciation expense included in both research and development expenses and selling, general and administrative expenses in the unaudited condensed consolidated statements of operations was as follows (in thousands):
Three Months Ended March 31,
20252024
Research and development$946 $1,032 
Selling, general and administrative212 220 
Total depreciation expense
$1,158 $1,252 
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2025December 31, 2024
Accrued purchases $2,544 $2,908 
Accrued professional and outside service fees2,396 3,064 
Other177 251 
Total other accrued liabilities$5,117 $6,223 
Note 8. Stock-based Compensation
Employee Stock Purchase Plan
In April 2023, our Board of Directors approved an employee stock purchase plan (as may be amended from time to time, the “ESPP”) which became effective upon approval at the 2023 Annual Meeting. The ESPP allows eligible employees of the Company to purchase shares of our common stock through payroll deductions. Offering periods are generally over a 24-month period and begin in May and November of each year. The per share purchase price will be the lower of 85% of the closing trading price per share of our common stock on the first trading date of an offering period in which a participant is enrolled or 85% of the closing trading price per share on the purchase date. Participant purchases are limited to a maximum of $25,000 of fair value of our stock per calendar year. The Company is authorized to grant up to 2,000,000 shares of common stock under the ESPP. The first offering period of the ESPP commenced in December 2023.
No shares of our common stock were purchased under the ESPP during the three months ended March 31, 2025 and 2024. As of March 31, 2025, 1,736,843 shares of common stock were available for future issuance under the ESPP. We recognized $0.1 million of stock-based compensation expenses related to the ESPP for each of the three months ended March 31, 2025 and 2024. As of March 31, 2025, the total unrecognized stock-based compensation expense, net of expected forfeitures, related to the ESPP was $0.4 million and is expected to be recognized over the remaining offering period.
14


Stock-Based Compensation Expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended March 31,
 20252024
Cost of product revenue$61 $115 
Research and development 665 820 
Selling, general and administrative1,653 2,236 
Total$2,379 $3,171 
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations (in thousands):
 Three Months Ended March 31,
 20252024
Stock options$1,355 $1,514 
RSUs and RSAs919 1,317 
Performance-contingent restricted stock units (“PSUs”) 247 
Performance based options (“PBOs”) 16 
ESPP105 77 
Total$2,379 $3,171 
As of March 31, 2025, unrecognized stock-based compensation expense, net of expected forfeitures, was $12.3 million related to unvested stock options and $5.6 million related to unvested RSUs and RSAs. Stock-based compensation expense for these awards will be recognized through 2029.
Note 9. Capital Stock
Exercise of Options
For the three months ended March 31, 2025 and March 31, 2024, we issued 339,142 and 72,856 shares, respectively, upon option exercises at a weighted-average exercise price of $3.09 and $1.97 per share, respectively, with net cash proceeds of $1.0 million and $0.1 million, respectively.
Sales Agreements
In May 2021, we filed a Registration Statement on Form S-3 with the SEC (the “2021 Registration Statement”), that automatically became effective upon its filing, under which we were permitted to sell common stock, preferred stock, debt securities, warrants, purchase contracts, and units from time to time in one or more offerings. On February 27, 2023, we filed a post-effective amendment to the 2021 Registration Statement. Pursuant to that post-effective amendment, we registered an aggregate $200.0 million of securities. In May 2021, we entered into an Equity Distribution Agreement (“EDA”) with Piper Sandler & Co (“PSC”), under which PSC, as our exclusive agent, at our discretion and at such times that we determined from time to time, may have sold over a three-year period from the execution of the EDA up to a maximum of $50.0 million of shares of our common stock. Under the terms of the EDA, PSC was permitted to sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act of 1933, as amended (the “Securities Act”).
We were not required to sell any shares at any time during the term of the EDA. On April 24, 2024, we terminated the EDA. No shares of our common stock were issued and sold pursuant to the EDA during the three months ended March 31, 2024.
15


On May 2, 2024, we entered into a Controlled Equity Offering℠ Sales Agreement (the “Cantor Sales Agreement”) with Cantor Fitzgerald & Co., as sales agent (“Cantor”), under which Cantor, at our discretion and at such times that we may determine from time to time, may sell up to a maximum of $75.0 million of shares of our common stock. Under the terms of the Cantor Sales Agreement, Cantor may sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act. On May 2, 2024, we filed a registration statement on Form S-3 registering the offer and sale of these shares under the Securities Act which became effective on May 14, 2024. We will pay a commission of up to 3.0% of gross sales proceeds of any common stock sold under the Cantor Sales Agreement. In 2024, 10,440,000 shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement, all during the third quarter of 2024, and we received net proceeds of $29.7 million after Cantors’ commissions and direct offering expenses.
During the three months ended March 31, 2025, no shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement. As of March 31, 2024, $43.7 million remained available for sale under the Cantor Sales Agreement.
Note 10. Commitments and Contingencies
Lease and other information
The Company has entered into operating leases primarily for office and laboratory space. Lease costs amounts included in the measurement of lease obligations and other information related to non-cancellable operating leases were as follows (in thousands):
Three Months Ended March 31,
 20252024
Operating lease cost(1)
$1,243 $1,032 
(1) The Company had no variable lease costs.
Other information:Operating Leases
Weighted-average remaining lease term (in years)7.6 years
Weighted-average discount rate7.0 %
Three Months Ended March 31,
Cash paid (in thousands):
20252024
Operating cash flows from operating leases$1,208 $1,173 
16


As of March 31, 2025, our maturity analysis of annual undiscounted cash flows of the non-cancellable operating leases are as follows (in thousands):
Years Ending December 31,Operating Leases
2025 (remaining 9 months)$3,660 
20265,014 
20274,053 
20285,400 
20295,365 
Thereafter15,695 
Total minimum lease payments39,187 
Less: imputed interest8,876 
Lease obligations$30,311 
Reconciliation of operating lease liabilities as shown within the unaudited condensed consolidated balance sheets (in thousands):
Current portion of lease obligations - Operating leases$2,913 
Long-term lease obligations - Operating leases27,398 
Total operating lease liabilities$30,311 
Other Commitments
We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work. As of March 31, 2025, the future minimum payments that we expect to pay, including potential obligations under services agreements subject to risk of cancellation by us, is minimal.
Legal Proceedings
We may be involved in legal actions in the ordinary course of business, including inquiries and proceedings concerning business practices and intellectual property infringement, employee relations and other claims. We will recognize a loss contingency in the consolidated financial statements when it is probable a liability has been incurred and the amount of the loss can be reasonably estimated. We will disclose any loss contingencies that do not meet both conditions if there is a reasonable possibility that a material loss may have been incurred. Gain contingencies are not recorded until they are realized.
We are currently not a party to any material pending litigation or other material legal proceedings that management believes could have a material adverse effect on our financial statements.
Indemnifications
We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third-party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.
17


Note 11. Debt
Innovatus Loan Agreement
On February 13, 2024 (the “Closing Date”), we entered into a five-year term loan and security agreement (the “Loan Agreement”) with Innovatus Life Sciences Lending Fund I, LP (“Innovatus”), an affiliate of Innovatus Capital Partners, LLC, for an aggregate principal amount of up to $40.0 million and with a maturity date of February 13, 2029 (the “Innovatus Loan”). The Innovatus Loan consists of two tranches, of which the first tranche of $30.0 million was funded on February 13, 2024. We will be eligible to draw down the second tranche of $10.0 million upon achievement of certain milestones including certain pre-specified revenue thresholds and subject to a payment of a facility fee equal to 1.00% of the amount of such term loan.
The floating per annum interest rate of the Innovatus Loan is equal to the sum of (a) the greater of (i) prime rate published in the Money Rates section of the Wall Street Journal and (ii) 7.50%, plus (b) 3.25%; provided that, at the election of the Company, up to 2.0% of such rate shall be payable in-kind until the third anniversary of the Closing Date. The Company is required to make monthly interest-only payments through February 1, 2027, with the ability to extend the interest-only period through February 1, 2028 upon the achievement of certain pre-specified financial milestones. Following the interest-only period, the Company is required to make monthly amortizing payments, with the remaining balance of the principal plus accrued and unpaid interest due at maturity. For the first three years of the term, 2.0% of the interest is payable in-kind by increasing the principal balance. Prepayments of the loan, in whole or in part, will be subject to an early prepayment fee which ranges between 3.0% and 1.0% and declines each year until the third anniversary date of the Closing Date, after which no prepayment fee is required. The Company is also required to pay an exit fee upon any payment or prepayment equal to 3.0% of the aggregate principal amount of the tranches funded under the Innovatus Loan.
The Innovatus Loan contains customary representations and warranties and covenants, subject to customary carve outs, and includes financial covenants related to liquidity and net product revenue, with the latter beginning with the period ended September 30, 2024. The Innovatus Loan is secured by perfected first priority liens on the Company's assets, and the Loan Agreement includes a negative pledge by the Company which prohibits the Company from permitting liens to be placed upon the Company's intellectual property in favor of any party other than Innovatus.
In connection with the issuance of the Innovatus Loan, we recorded a debt discount of $1.3 million and capitalized debt issuance costs of $0.6 million during the first quarter of 2024. The discount and issuance costs will be amortized over the life of the Innovatus Loan. Interest expense for the Innovatus Loan for the three months ended March 31, 2025 and 2024 was $0.9 million and $0.5 million, respectively, and is inclusive of non-cash amortization of the debt discount, debt issuance costs, payable in-kind interest, and accretion of final payment. The carrying amount of the Innovatus Loan approximates fair value given its recent issuance and the interest rate is based on the current prime rate. The effective interest rate for the Innovatus Loan was 13.1% as of March 31, 2025.
Additionally, in connection with entering into the Innovatus Loan, we entered into a Warrant Agreement with Innovatus on February 13, 2024 and issued to Innovatus a warrant to purchase an aggregate of 424,028 shares of the Company’s common stock at an exercise price of $2.83 per share. The warrants may be exercised on a cashless basis, and are immediately exercisable through the 10th anniversary of the issuance date. At the time of issuance, the Company determined the estimated fair value of the warrants of $0.9 million using the Black-Scholes model. As the warrants represent a freestanding equity instrument, the Company recorded the fair value of the warrants in additional paid-in capital during the first quarter of 2024.
The Company accounts for the amortization of the debt discount and issuance costs utilizing the effective interest method. Long-term debt consisted of the following at March 31, 2025 (in thousands):
March 31, 2025
Face value of debt$30,000 
Add: payment in-kind interest634 
Add: amortized exit fee166 
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
18


The future principal payments under the Innovatus Loan are as follows (in thousands):
Years Ending December 31,
2025$ 
2026 
202713,264 
202815,917 
20292,653 
Total principal payments31,834 
Add: amortized exit fee166 
Less: uncapitalized payment in-kind interest(1,200)
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
Note 12. Segment, Geographical and Other Revenue Information
Segment Information
We manage our business as one reportable segment. The Company's operations are managed and reported to the CODM on a consolidated basis. The CODM uses consolidated income (loss) from operations and net income (loss) to assess financial performance and make resource allocation decisions. These financial measures are used by the CODM to balance short-term financial results with long-term strategic goals, guiding the allocation of budget between product costs, research and development expenses, and general, selling and administrative expenses.
Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended March 31,
20252024
Customer A34 %*
Customer B17 %10 %
Customer C15 %15 %
Customer D*35 %
* Percentage was less than 10%
Customers that each accounted for 10% or more of accounts receivable balances as of the periods presented as follows:
Percentage of Accounts Receivables as of
March 31, 2025December 31, 2024
Customer C39 %16 %
Customer E36 %18 %
Customer F*12 %
Customer G*10 %
* Percentage was less than 10%
Identifiable long-lived assets by location was as follows (in thousands):
March 31, 2025December 31, 2024
United States$43,952 $43,098 
19


ITEM 2.MANAGEMENT'S DISCUSSION AND ANALYSIS OF FINANCIAL CONDITION AND RESULTS OF OPERATIONS
The following management's discussion and analysis of our financial condition and results of operations should be read in conjunction with the unaudited condensed consolidated financial statements and the related notes thereto included elsewhere in this Quarterly Report on Form 10-Q and the audited consolidated financial statements and notes thereto and management's discussion and analysis of financial condition and results of operations for the year ended December 31, 2024 included in our Annual Report on Form 10-K for the year ended December 31, 2024, as filed with the SEC on February 27, 2025 (the “Annual Report”). This Quarterly Report on Form 10-Q contains forward-looking statements within the meaning of Section 21E of the Securities Exchange Act of 1934, as amended (the “Exchange Act”). These statements include, but are not limited to, expectations regarding our strategy, business plans, financial performance and developments relating to our industry. These statements are often identified by the use of words such as “may,” “will,” “expect,” “believe,” “anticipate,” “intend,” “could,” “should,” “estimate,” or “continue,” and similar expressions or variations. Such forward-looking statements are subject to risks, uncertainties and other factors that could cause actual results and the timing of certain events to differ materially from future results expressed or implied by such forward-looking statements. Factors that could cause or contribute to such differences include, but are not limited to, those discussed in Part II, Item 1A: “Risk Factors” of this Quarterly Report on Form 10-Q and Part I, Item 1A: “Risk Factors” of our Annual Report, and elsewhere in this report. The forward-looking statements in this Quarterly Report on Form 10-Q represent our views as of the date of this Quarterly Report on Form 10-Q. We anticipate that subsequent events and developments may cause our views to change. However, while we may elect to update these forward-looking statements at some point in the future, we have no current intention of doing so except to the extent required by applicable law. You should, therefore, not rely on these forward-looking statements as representing our views as of any date subsequent to the date of this Quarterly Report on Form 10-Q.

Business Overview
We are a leading provider of enzymatic solutions for efficient and scalable therapeutics manufacturing, and we leverage our proprietary CodeEvolver directed evolution technology platform to discover, develop, enhance, and commercialize novel, high-performance enzymes and other classes of proteins. Enzymes are naturally occurring biological molecules critical to almost all biochemical reactions that sustain life. They can be precisely engineered and optimized for specific functions, and to have particular characteristics, such as an ability to survive environments in which natural enzymes cannot, or to perform (bio)chemical transformations different than those for which they naturally evolved. We focus on leveraging our technology and capacity to enhance the properties and performance of enzymes to drive pivotal improvements in manufacturing of complex therapeutics across two key focus areas: our foundational, revenue-generating pharma biocatalysis business and our Enzyme-Catalyzed Oligonucleotide (ECO) Synthesis (“ECO Synthesis”) manufacturing platform, which is comprised of enzymatic tools, and processes, designed to enable large-scale manufacture of RNA interference (“RNAi”) therapeutics. In July 2023, we announced that we discontinued investment in certain development programs, primarily in our novel biotherapeutics business segment. As part of this strategic prioritization, during 2024 we completed the divestiture and monetization of certain biotherapeutics assets as well as certain non-core life science assets, including in genomics and next generation sequencing applications.
In our revenue-generating pharma biocatalysis business (formerly our pharmaceuticals manufacturing business), we utilize our CodeEvolver technology platform to develop optimized enzymes that are used by some of the world’s largest pharmaceutical companies to improve the efficiency and productivity of their manufacturing processes for small molecule therapeutics. Our unique enzymes drive improvements such as higher yields, increased purity, reduced energy usage and waste generation, all of which lead to improved efficiency and reduced costs in small-molecule manufacturing.
20


We also use the CodeEvolver platform technology to develop enzymes for the synthesis of RNAi therapeutics through our ECO Synthesis manufacturing platform, where our enzymes are poised to deliver many of the same benefits we offer in pharma biocatalysis across purity, yield, and improved manufacturing efficiency. In November 2024, we presented data at the TIDES EU conference demonstrating the successful end-to-end enzymatic synthesis of an entire commercially approved small interfering ribonucleic acid (“siRNA”) therapeutic asset with the ECO Synthesis manufacturing platform. In addition to using full enzymatic sequential synthesis, adding one nucleotide at a time to synthesize the two strands from beginning to end, we demonstrated synthesis of the same siRNA asset using three other routes utilizing enzymatic ligation with our double-stranded RNA (“dsRNA”) ligase, which can stitch together fragments of chemically and/or enzymatically synthesized RNA to form the full siRNA drug structure. For the three other routes, our data highlighted that full-length oligos of equal quality and yields were obtained whether the fragments were made with enzymes or by traditional phosphoramidite chemistry. At the end of 2024, we completed the build out of our ECO Synthesis Innovation Lab, a facility that uses our ECO Synthesis manufacturing platform to synthesize gram-scale quantities of a customer’s desired siRNA construct suitable for pre-clinical testing. In 2025, we expect to manufacture good laboratory practice (“GLP”)-grade siRNA for customers in our Innovation Lab under development services contracts model, and we anticipate entering a partnership with a large-scale contract development and manufacturing organization (“CDMO”) to use our ECO Synthesis platform of enzymatic tools and processes to synthesize good manufacturing practices (GMP)-grade siRNA drug substance for our customers. We expect to expand our enzymatic tools and process offerings as we further enhance the ECO Synthesis platform to address the overall market needs for scalable and sustainable RNAi manufacturing.
As of March 31, 2025, we manage our business as one business segment. For additional information, see Note 12, “Segment, Geographical and Other Revenue Information” in the Notes to Unaudited Condensed Consolidated Financial Statements included in this Quarterly Report.
Recent Developments
Strengthened Board of Directors with new appointments

We announced the appointment of Christos Richards to our Board of Directors on January 16, 2025, followed by the appointment of Cynthia Collins on March 28, 2025.

Results of Operations
The following table shows the amounts from our unaudited condensed consolidated statements of operations for the periods presented (in thousands, except percentages):
 Three Months Ended March 31,Change
 20252024$%
Revenues:
Product revenue$6,059 $9,551 $(3,492)(37)%
Research and development revenue1,484 7,522 (6,038)(80)%
Total revenues7,543 17,073 (9,530)(56)%
Costs and operating expenses:
Cost of product revenue2,732 4,855 (2,123)(44)%
Research and development12,942 11,246 1,696 15%
Selling, general and administrative12,355 12,860 (505)(4)%
Total costs and operating expenses28,029 28,961 (932)(3)%
Loss from operations(20,486)(11,888)(8,598)72%
Interest income751 909 (158)(17)%
Interest and other expense, net(942)(516)(426)83%
Loss before income taxes(20,677)(11,495)(9,182)80%
Provision for income taxes11 10 10%
Net loss$(20,688)$(11,505)$(9,183)80%
21


Revenues
Our revenues consisted of product revenue and research and development revenue as follows:
Product revenue consists of sales of biocatalysts used in the manufacture of small molecule active pharmaceutical intermediaries, enzymes such as dsRNA ligase used in the manufacture of siRNA molecules, enzymes for the molecular biology and diagnostic markets, and Codex biocatalyst panels and kits.
Research and development revenue includes license, technology access and exclusivity fees, research services fees, milestone payments, royalties, optimization and screening fees.
Revenues are as follows (in thousands, except percentages):
Three Months Ended March 31,Change
20252024$%
Product revenue$6,059 $9,551 $(3,492)(37)%
Research and development revenue1,484 7,522 (6,038)(80)%
Total revenues$7,543 $17,073 $(9,530)(56)%
Revenues typically fluctuate on a quarterly basis due to the variability in our customers' manufacturing schedules and the timing of our customers’ clinical trials. In addition, we have limited internal capacity to manufacture enzymes. As a result, we are dependent upon the performance and capacity of third-party manufacturers for the commercial scale manufacturing of the enzymes used in our pharma biocatalysis, ECO and molecular biology and diagnostics enzymes businesses.
We accept purchase orders for deliveries covering periods from one day up to 14 months from the date on which the order is placed. However, some of our purchase orders can be revised or cancelled by the customer without penalty. Considering these industry practices and our experience, we do not believe the total of customer purchase orders outstanding (backlog) provides meaningful information that can be relied on to predict actual sales for future periods.
Total revenues decreased by $9.5 million to $7.5 million in the three months ended March 31, 2025 compared to the same period in 2024, or 56%.
Product revenue decreased by $3.5 million to $6.1 million in the three months ended March 31, 2025 compared to the same period in 2024, primarily due to lower sales of enzymes used in the manufacture of branded pharmaceutical products.
Research and development revenue decreased by $6.0 million to $1.5 million in the three months ended March 31, 2025 compared to the same period in 2024, primarily due to $6.0 million lower revenue from our licensing agreement with Roche Sequencing Solutions, Inc. entered into in February 2024 and $0.6 million lower revenue from legacy collaboration agreements being recognized in 2025 as compared to the same period in 2024. These were partially offset by $0.6 million higher revenue from existing collaboration agreements.
Cost and Operating Expenses
The following table shows the amounts of our cost of product revenue, research and development expense, and selling, general and administrative expense from our unaudited condensed consolidated statements of operations for the periods presented (in thousands, except percentages):
Three Months Ended March 31,Change
20252024$%
Cost of product revenue$2,732 $4,855 $(2,123)(44)%
Research and development12,942 11,246 1,696 15%
Selling, general and administrative12,355 12,860 (505)(4)%
Total costs and operating expenses$28,029 $28,961 $(932)(3)%
22


Cost of Product Revenue and Product Gross Margin
The following table shows the amounts of our product revenue, cost of product revenue, product gross profit and product gross margin from our unaudited condensed consolidated statements of operations for the periods presented (in thousands, except percentages):
Three Months Ended March 31,Change
20252024$%
Product revenue$6,059$9,551$(3,492)(37)%
Cost of product revenue(1)
2,7324,855(2,123)(44)%
Product gross profit$3,327$4,696$(1,369)(29)%
Product gross margin (%)(2)
55 %49 %
(1) Cost of product revenue consists of both internal and third-party fixed and variable costs, including materials and supplies, labor, facilities and other overhead costs associated with our product revenue.
(2) Product gross margin is used as a performance measure to provide additional information regarding our results of operations on a consolidated basis.
Cost of product revenue decreased by $2.1 million in the three months ended March 31, 2025 compared to the same period in 2024 primarily due to a lower volume of product sales as compared to the same period in 2024. Product gross margin increased to 55% in the three months ended March 31, 2025 compared to 49% in the three months ended March 31, 2024, primarily due to variability in the product mix.
Research and Development Expenses
Research and development expenses consist of costs incurred for internal projects as well as collaborative research and development activities. These costs primarily consist of (i) employee-related costs, which include salaries and other personnel-related expenses (including stock-based compensation), (ii) various allocable expenses, which include occupancy-related costs, supplies, depreciation of facilities and laboratory equipment, and (iii) external costs. Research and development expenses are expensed when incurred.
Research and development expenses were $12.9 million in the first quarter of 2025, an increase of $1.7 million, or 15%, from $11.2 million in the first quarter of 2024. This increase was primarily due to $0.8 million in higher allocable costs, $0.5 million increase in costs associated with higher headcount and $0.3 million in higher lab supplies expense.
Selling, General and Administrative Expenses
Selling, general and administrative expenses consist of employee-related costs, which include salaries and other personnel-related expenses (including stock-based compensation), hiring and training costs, consulting and outside services expenses (including audit and legal counsel related costs), marketing costs, building lease costs, and depreciation expenses and amortization expenses.
Selling, general and administrative expenses were $12.4 million in the first quarter of 2025, a decrease of $0.5 million, or 4%, compared to $12.9 million in the first quarter of 2024. This decrease was primarily due to $0.7 million in lower legal fees, $0.6 million in lower stock-based compensation expense, and $0.3 million in lower allocable costs. These were partially offset by a $1.1 million increase in costs associated with higher headcount.
Interest Income and Interest and Other Expense, net (in thousands, except percentages):
Three Months Ended March 31,Change
20252024$%
Interest income$751 $909 $(158)(17)%
Interest and other expense, net(942)(516)(426)83%
Total other income (expense), net
$(191)$393 $(584)(149)%
Interest Income
Interest income decreased by $0.2 million in the three months ended March 31, 2025 compared to the same period in 2024, primarily due to lower average cash, cash equivalents and short-term investments balances.
23


Interest and Other Expense, net
Interest and other expense, net, increased by $0.4 million in the three months ended March 31, 2025, compared to the same period in 2024, primarily due to interest related to long-term debt.
Provision for Income Taxes (in thousands, except percentages):
Three Months Ended March 31,Change
20252024$%
Provision for income taxes$11 $10 $10%
The provision for income taxes for the three months ended March 31, 2025 and 2024, was primarily due to the accrual of interest and penalties on historic uncertain tax positions.
Net Loss
Net loss for the three months ended March 31, 2025 was $20.7 million, or a net loss per basic and diluted share of $0.25. This compared to a net loss of $11.5 million, or a net loss per basic and diluted share of $0.16 for the three months ended March 31, 2024. The increase in net loss is primarily related to lower product revenues and research and development revenues, partially offset by lower cost of product revenue.
LIQUIDITY AND CAPITAL RESOURCES
Liquidity is the measurement of our ability to meet working capital needs and to fund capital expenditures. We have historically funded our operations primarily through cash generated from operations, stock option exercises and public and private offerings of our common stock. In addition, pursuant to the Loan Agreement with Innovatus, an affiliate of Innovatus Capital Partners, LLC, we borrowed $30.0 million from Innovatus, as Lender, on February 13, 2024 and may become eligible to borrow up to an additional $10.0 million upon the achievement of certain financial milestones. The Loan Agreement provides for an aggregate principal amount of up to $40.0 million and with a maturity date of February 13, 2029 (the “Innovatus Loan”). We actively manage our cash usage and investment of liquid cash to ensure the maintenance of sufficient funds to meet our working capital needs. Our cash and cash equivalents are held in U.S. banks.
Our primary uses of capital for the foreseeable future, including the next 12 months, are for compensation and related expenses, research and development expenses including manufacturing costs, laboratory and related supplies, legal and other regulatory expenses, and general overhead costs.
The following summarizes our cash and cash equivalents and short-term investments balances and working capital as of March 31, 2025 and December 31, 2024 (in thousands):
March 31, 2025December 31, 2024
Cash and cash equivalents$18,319 $19,264 
Short-term investments
$41,462 $54,194 
Working capital$56,907 $75,124 
Sources of Capital
In addition to our existing cash and cash equivalents, short-term investments and revenue generated through our existing operations, we are eligible to earn milestone and other contingent payments for the achievement of defined collaboration objectives under our collaboration agreements. Our ability to earn these milestone and contingent payments and the timing of achieving these milestones is primarily dependent upon the outcome of our collaborators’ research and development activities and is uncertain at this time.
We have historically experienced negative cash flows from operations as we continue to invest in key technology development projects and improvements to our CodeEvolver technology platform, develop and commercialize new and existing products including our ECO Synthesis manufacturing platform and expand our business development and collaboration with new customers. Our cash flows from operations will continue to be affected principally by product sales and product gross margins, sales from licensing our technology to major pharmaceutical companies, and collaborative research and development services provided to customers, as well as our headcount costs. Our primary source of cash flows from operating activities is cash receipts from our customers for purchases of products, collaborative research and development services, and licensing our technology to major pharmaceutical companies. Our largest uses of cash from operating activities are for employee-related expenditures, rent payments, inventory purchases to support our product sales and non-payroll research and development costs.
24


Loan Agreement and Term Loans
On February 13, 2024, we entered into the Loan Agreement with Innovatus consisting of up to two tranches, of which the first tranche of $30.0 million was disbursed upon execution of the Loan Agreement. We will be eligible to draw on the second tranche of $10.0 million upon achievement of certain milestones including certain pre-specified revenue thresholds and subject to payment of a facility fee equal to 1.00% of the amount of such term loan. The Term Loan carries an interest-only period of 36 months (with the possibility to extend up to 48 months upon achievement of certain pre-specified financial milestones) and will bear interest at a floating rate of the sum of (a) the greater of (i) prime rate and (ii) 7.50%, plus (b) 3.25%.
Sales Agreements
In May 2021, we entered into an Equity Distribution Agreement (“EDA) with Piper Sandler & Co (“PSC), under which PSC, as our exclusive agent, at our discretion and at such times that we may determine from time to time, may sell over a three-year period from the execution of the EDA up to a maximum of $50.0 million of shares of our common stock. In 2023, 3,079,421 shares of our common stock were issued and sold pursuant to the EDA, all during the first half of 2023, and we received net proceeds of $7.9 million. On April 24, 2024, we terminated the EDA.
On May 2, 2024, we entered into the Cantor Sales Agreement with Cantor, under which Cantor, at our discretion and at such times that we may determine from time to time, may sell up to a maximum of $75.0 million of shares of our common stock. Under the terms of the Cantor Sales Agreement, Cantor may sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act. On May 2, 2024, we filed a registration statement on Form S-3 registering the offer and sale of these shares under the Securities Act which became effective on May 14, 2024. We will pay a commission of up to 3.0% of gross sales proceeds of any common stock sold under the Cantor Sales Agreement. In 2024, 10,440,000 shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement, all during the third quarter of 2024, and we received net proceeds of $29.7 million after Cantor’s commissions and direct offering expenses.
Sales of our common stock under the Cantor Sales Agreement could be subject to business, economic or competitive uncertainties and contingencies, many of which may be beyond our control, and which could cause actual results from the sale of our common stock to differ materially from expectations.
Liquidity
We believe that our existing cash and cash equivalents, combined with our future expectations for product revenues, research and development revenue, and expense management will provide adequate funds for ongoing operations, planned capital expenditures and working capital requirements for at least the next 12 months. We have based this estimate on assumptions that may prove to be wrong, and we could utilize our capital resources sooner than we expect.

However, we may need additional capital if our current plans and assumptions change. In addition, we may choose to seek sources of capital, which may arise through a combination of equity offerings, debt financings, other third-party funding and other collaborations, strategic alliances and partnering arrangements, even if we believe we have generated sufficient cash flows to support our operating needs. Our need for additional capital will depend on many factors, including the financial success of our business, the spending required to develop and commercialize new and existing products including our ECO Synthesis manufacturing platform, the effect of any acquisitions of other businesses, technologies or facilities that we may make or develop in the future, our spending on new market opportunities, and the potential costs for the filing, prosecution, enforcement and defense of patent claims, if necessary. If our capital resources are insufficient to meet our capital requirements, and we are unable to enter into or maintain collaborations with partners that are able or willing to fund our development efforts or commercialize any products that we develop or enable, we will have to raise additional funds to continue the development of our technology and products and complete the commercialization of products, if any, resulting from our technologies. If future financings involve the issuance of equity securities, our existing stockholders would suffer dilution. In addition, under our Loan Agreement, we are subject to restrictive covenants that limit our ability to conduct our business and could be subject to additional covenants to the extent we seek other debt financing in the future. We may not be able to raise sufficient additional funds on terms that are favorable to us, if at all. If we fail to raise sufficient funds and fail to generate sufficient revenues to achieve planned gross margins and to control operating costs, our ability to fund our operations, take advantage of strategic opportunities, develop products or technologies, or otherwise respond to competitive pressures could be significantly limited. If this happens, we may be forced to delay or terminate development of new products or services, such as our ECO Synthesis manufacturing platform, or the commercialization of products resulting from our technologies, curtail or cease operations or obtain funds through collaborative and licensing arrangements that may require us to relinquish commercial rights, or grant licenses on terms that are not favorable to us. If adequate funds are not available, we will not be able to successfully execute our business plan or continue our business.
25


Cash Flows
The following is a summary of cash flows for three months ended March 31, 2025 and 2024 (in thousands):
 Three Months Ended March 31,
20252024
Net cash used in operating activities$(13,798)$(7,789)
Net cash provided by (used in) investing activities11,769 (28,563)
Net cash provided by financing activities1,085 29,281 
Net decrease in cash, cash equivalents and restricted cash$(944)$(7,071)
Cash Flows from Operating Activities
The $6.0 million increase in net cash used in operations for the three months ended March 31, 2025 as compared to the same period in 2024 was primarily due to the net effect of decreases in cash received from revenue, increases in cash paid for operating expenses and changes in operating assets and liabilities.
Cash Flows from Investing Activities
The $40.3 million increase in net cash provided by investing activities for the three months ended March 31, 2025 as compared to the same period in 2024, was primarily due to proceeds from maturity of short-term investments in the first quarter of 2025 offset by cash utilized for purchase of short-term investments.
Cash Flows from Financing Activities
The $28.2 million decrease in net cash provided by financing activities for the three months ended March 31, 2025 as compared to the same period in 2024 was primarily due to proceeds from the Innovatus Loan in February 2024 that did not reoccur in 2025.
CRITICAL ACCOUNTING POLICIES AND ESTIMATES
The preparation of financial statements in conformity with generally accepted accounting principles requires management to make judgments, estimates and assumptions in the preparation of our consolidated financial statements and accompanying notes. Actual results could differ from those estimates. There have been no material changes to our critical accounting policies or estimates during the three months ended March 31, 2025 from those discussed in our Annual Report.
26


ITEM 3.QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK
Market Risk Management
Our cash flows and earnings are subject to fluctuations due to changes in foreign currency exchange rates, interest rates and other factors. These market risk exposures are disclosed in Part II, Item 7A of our Annual Report.
Interest Rate Sensitivity
Our unrestricted cash, cash equivalents, and short-term investments in marketable securities total $59.8 million as of March 31, 2025. We primarily invest these amounts in money market funds and short-term debt which are held for working capital purposes. We do not enter into investments for trading or speculative purposes. As of March 31, 2025, the effect of a hypothetical 10% decrease in market interest rates would have a $0.2 million impact on a potential loss in future interest income and cash flows.
We are also exposed to market risk from changes in interest rates as a result of our indebtedness under the Innovatus Loan. At March 31, 2025, we had $30.6 million principal amount outstanding under the Innovatus Loan. The floating per annum interest rate of the Innovatus Loan is equal to the sum of (a) the greater of (i) prime rate published in the Money Rates section of the Wall Street Journal and (ii) 7.50%, plus (b) 3.25%; provided that, at the election of the Company, up to 2.00% of such rate shall be payable in-kind until the third anniversary of the Closing Date. An immediate 10% change in the prime interest rate would result in a $0.2 million impact on our results of operations over the next twelve months from March 31, 2025.
Foreign Currency Risk
Our results of operations and cash flows are subject to fluctuations due to changes in foreign currency exchange rates. In periods when the United States dollar (USD”) declines in value as compared to the foreign currencies in which we incur expenses, our foreign-currency based expenses increase when translated into USD. Although substantially all of our sales are denominated in USD, future fluctuations in the value of the USD may affect the price competitiveness of our products outside the United States. Our most significant foreign currency exposure is due to non-functional currency denominated monetary assets, primarily currencies denominated in other than their functional currency. These non-functional currency denominated monetary assets are subject to re-measurement which may create fluctuations in Interest and other expense, net, a component in our condensed consolidated statements of operations and in the fair value of the assets in the condensed consolidated balance sheets. As of March 31, 2025, the effect of a hypothetical 10% unfavorable change in exchange rates on currencies denominated in other than their functional currency would result in a potential loss in future earnings in our condensed consolidated statements of operations and a reduction in the fair value of the assets of approximately $40 thousand.
Investment in Non-Marketable Equity Securities
We own investments in non-marketable equity securities without readily determinable fair values. We may value these equity securities based on significant recent arms-length equity transactions with sophisticated non-strategic unrelated investors, providing the terms of these security transactions are substantially similar to the security transactions terms between the investors and us. The impact of the difference in transaction terms on the market value of the portfolio company may be difficult or impossible to quantify.
27


ITEM 4.CONTROLS AND PROCEDURES
Evaluation of Disclosure Controls and Procedures
We maintain disclosure controls and procedures and internal controls that are designed to provide reasonable assurance that information required to be disclosed by us in the reports we file or submit under the Exchange Act is recorded, processed, summarized, and reported within the time periods specified in the SEC's rules and forms. Disclosure controls and procedures include, without limitation, controls and procedures designed to ensure that 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 disclosure.
Our management, under the supervision of our Chief Executive Officer and Chief Financial Officer and with the participation of our disclosure committee, evaluated the effectiveness of our disclosure controls and procedures as defined by Rules 13a-15(e) and 15d-15(e) of the Exchange Act. Based on this review, our Chief Executive Officer and Chief Financial Officer concluded that these disclosure controls and procedures were effective as of March 31, 2025 at a reasonable assurance level.
Changes in Internal Control over Financial Reporting
There were no changes in our internal control over financial reporting identified in connection with the evaluation required by paragraph (d) of Exchange Act Rules 13a-15 or 15d-15 that occurred during our last fiscal quarter that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.
Inherent Limitations on Effectiveness of Controls
In designing and evaluating the disclosure controls and procedures, management recognizes that any controls and procedures, even if determined effective and no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives to prevent or detect misstatements. In addition, the design of disclosure controls and procedures must reflect the fact that there are resource constraints, and that management is required to apply judgment in evaluating the benefits of possible controls and procedures relative to their costs. 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.

28


PART II. OTHER INFORMATION
ITEM 1.
LEGAL PROCEEDINGS
We are not currently a party to any material pending litigation or other material legal proceedings.
ITEM 1A.RISK FACTORS
You should carefully consider the risks described below together with the other information set forth in this Quarterly Report, which could materially affect our business, financial condition or future results. The risks described below are not the only risks facing our company. Risks and uncertainties not currently known to us or that we currently deem to be immaterial also may materially adversely affect our business, financial condition and/or operating results. Additional discussion of the material risks and uncertainties summarized in this risk factor summary, as well as certain other risks and uncertainties that we face, can be found in this section.
RISK FACTORS SUMMARY
The following is a summary of the principal factors that cause an investment in the Company to be speculative or risky:
We have a history of net losses and we may not achieve or maintain profitability.
Therapeutics development programs are highly regulated and expensive, and our enzyme products are complex and subject to quality control requirements. The ability of our customers, future customers or collaborators, including any company developing RNAi and other RNA-based therapeutics, to advance product candidates utilizing our products to clinical trials and to ultimately receive regulatory approvals is highly uncertain.
We believe that our products are exempt from Food, Drug, and Cosmetic Act (“FDCA”) requirements, but FDA or other regulators may disagree and find that our products are subject to such requirements.
We are dependent on a limited number of customers.
Some of our product supply agreements with customers have finite duration and may not be extended or renewed.
The demand for our products depends in part on our customers' research and development and the clinical and market success of their products.
If we are unable to develop and commercialize new products for our target markets, our business and prospects will be harmed.
A reduction or delay in government funding of research and development for our customers may adversely affect our business.
With respect to customers purchasing our products for the manufacture of API for which they have exclusivity due to patent protection, the termination or expiration of such patent protection and any resulting generic competition may materially and adversely affect our revenues, financial condition or results of operations.
The services and offerings we provide are highly complex, and if we encounter problems providing the services or support required, our business could suffer.
Any productivity issues or higher-than-expected costs at our facilities could result in material and adverse impacts on our financial condition and results of operations.
We are dependent on a limited number of third-party contract manufacturers for large scale production of substantially all of our enzymes.
We are dependent on our collaborators, and our failure to successfully manage these relationships could prevent us from developing and commercializing many of our products.
We have invested significant resources to enable enzymatic nucleic acid synthesis, which is based on novel ideas and technologies that are largely unproven.
29


As a result of our strategic shift and our refined focus on the revenue-generating pharma biocatalysis business and the ECO Synthesis platform, we may fail to capitalize on other opportunities that may be more profitable or for which there is a greater likelihood of success.
Given our change in strategic direction, we may receive limited revenue or no future value from certain of our existing license agreements.
The timing of customer orders and related product revenue recognition is unpredictable and may cause our operating results to vary significantly from quarter to quarter, which could adversely affect our stock price.
We use hazardous materials in our business, and we must comply with environmental laws and regulations.
We may need additional capital in the future in order to expand our business.
We may not be able to comply with the terms of our five-year term loan and security agreement (our “Loan Agreement”) with Innovatus Life Sciences Lending Fund I, LP (“Innovatus”), an affiliate of Innovatus Capital Partners, LLC.
Even if our customers or collaborators obtain regulatory approval for any products utilizing our enzymes, such products will remain subject to ongoing regulatory requirements, which may result in significant additional expense.
If we or our customers fail to comply with certain healthcare laws, including fraud and abuse laws, we could face substantial penalties and our business, results of operations, financial condition and prospects could be adversely affected.
Our efforts to prosecute, maintain, protect and/or defend our intellectual property rights may not be successful.
Third parties may claim that we are infringing, violating or misappropriating their intellectual property rights, which may subject us to costly and time-consuming litigation and prevent us from developing or commercializing our technology, products or services.
We may be involved in lawsuits to protect or enforce our intellectual property rights, which could be expensive, time-consuming and unsuccessful.
If our biocatalysts are stolen, misappropriated or reverse engineered, others could use these biocatalysts to produce competing products.
We are subject to anti-takeover provisions in our certificate of incorporation and bylaws and under Delaware law that could delay or prevent an acquisition of our company.
Market and economic conditions may negatively impact our business, financial condition, and share price.
International trade policies, including tariffs, sanctions and trade barriers, may adversely affect our business.
Business interruptions resulting from political events, disasters or other disturbances could delay us in the process of developing our products and could disrupt our sales.
30


Risks Related to Our Business and Strategy
We have a history of net losses and we may not achieve or maintain profitability.
We have incurred net losses since our inception, including losses of $65.3 million, $76.2 million, and $33.6 million for the years ended December 31, 2024, 2023, and 2022, respectively, and $20.7 million and $11.5 million for the three months ended March 31, 2025 and 2024, respectively. As of March 31, 2025 and December 31, 2024, we had an accumulated deficit of $583.5 million and $562.8 million, respectively. If we are unable to continue to successfully develop and commercialize products in our pharma biocatalysis business, increase sales of existing products and services, develop and commercialize our ECO Synthesis manufacturing platform, develop new products or services, or otherwise expand our business, whether through new or expanded collaborations or other products and services, our net losses may increase and we may never achieve profitability. In addition, some of our agreements, including the agreements with GlaxoSmithKline plc (“GSK”), Merck Sharp & Dohme (“Merck”), Novartis Pharma AG (“Novartis”), Nestlé Health Science (“Nestlé”), Aldevron LLC, Roche Sequencing Solutions, Inc., Crosswalk Therapeutics and Alphazyme LLC, provide for milestone payments, usage payments, and/or future royalty or other payments, which we will only receive if we and/or our collaborators develop and commercialize products or achieve technical milestones. We also intend to continue to fund the development of additional proprietary performance enzyme products and advance new technologies like our ECO Synthesis manufacturing platform. There can be no assurance that any of these products or services will become commercially viable or that we will ever achieve profitability on a quarterly or annual basis. If we fail to achieve profitability, or if the time required to achieve profitability is longer than we anticipate, we may not be able to continue our business. Even if we do achieve profitability, we may not be able to sustain or increase profitability on a quarterly or annual basis.
Therapeutics development programs are highly regulated and expensive, and our enzyme products are complex and subject to quality control requirements. The ability of our customers, future customers or collaborators, including any company developing RNAi and other RNA-based therapeutics, to advance product candidates utilizing our products to clinical trials and to ultimately receive regulatory approvals is highly uncertain.
Although we are no longer developing our own portfolio of biotherapeutics product candidates, we continue to develop enzyme products, including our ECO Synthesis manufacturing platform, that may be used by our customers, future customers or collaborators in connection with their biotherapeutic product candidates. The successful development of biotherapeutic candidates involves many risks and uncertainties, requires long timelines and may lead to uncertain results.
Our customers are subject to extensive regulations by the FDA and similar regulatory authorities in other countries for conducting clinical trials and commercializing products for therapeutic, vaccine or diagnostic use. These regulations result in our customers imposing quality requirements on us for the manufacture of our enzyme products through supplier qualification processes and customer contracts and specifications.
In order to market a biologic or drug product in the United States, our customers, future customers or collaborators must undergo the following process required by the FDA:
completion of extensive preclinical laboratory tests and preclinical animal studies, all performed in accordance with the FDA's Good Laboratory Practice requirements;
submission to the FDA of an IND, which must become effective before human clinical studies may begin in the United States;
approval by an independent institutional review board (“IRB”) representing each clinical site before the clinical study may be initiated at the site;
performance of adequate and well-controlled human clinical studies in accordance with GCP requirements to establish the safety, purity and potency (or efficacy) of the product candidate for each proposed indication;
preparation of and submission to the FDA of an NDA or BLA after completion of all clinical studies;
potential review of the product candidate by an FDA advisory committee;
satisfactory completion of an FDA pre-approval inspection of the manufacturing facilities where the product candidate is produced to assess compliance with current Good Manufacturing Practice (“cGMP”) requirements;
FDA review and approval of a BLA or NDA prior to any commercial marketing or sale of the product in the United States; and
31


any post-approval requirements, if applicable.
The regulatory approval processes of the FDA and comparable foreign authorities are lengthy, time consuming and the results are inherently unpredictable. If our customers, future customers or collaborators are ultimately unable to obtain regulatory approval for their biotherapeutic product candidates utilizing our enzyme products, our business may be harmed. In addition, if our customers, future customers or collaborators fail to comply with applicable FDA or other regulatory requirements at any time during the drug development process, clinical testing, the approval process or after approval, they may become subject to administrative or judicial penalties, including the FDA’s refusal to approve a pending application, withdrawal of an approval, warning letters, product recalls and additional enforcement actions, any of which may have an adverse effect on our financial condition.
We believe that our products are exempt from FDCA requirements, but FDA or other regulators may disagree and find that our products are subject to such requirements.
We believe our enzyme products are exempt from compliance with the FDCA and the implementing GMP regulations of the FDA, as our products are further processed and incorporated into final drug or biologic products by our customers and we do not make claims related to their safety or effectiveness. Our products are currently manufactured following the voluntary quality standards of ISO 9001:2015, and we anticipate signing and announcing a partnership with a CDMO to provide enzymatically synthesized, GMP-grade siRNA to customers in the near term. Our planned collaboration with a CDMO may not come to fruition and, even if it does, may not scale up as anticipated. Even if the scale up plans succeed, we or the CDMO may incur delays in production or have insufficient product for consumers. And, in the event we, or our suppliers, produce products that fail to comply with voluntary quality standards or GMP standards imposed by customers, we may incur delays in fulfilling orders, write-downs or other losses, damages resulting from product liability claims and harm to our reputation.
In the future, our products could become subject to more onerous regulation, or the FDA could disagree with our assessment that our enzyme products are exempt from current GMP regulations. In addition, the FDA could conclude that the products we provide to our customers are actually subject to the pharmaceutical, drug or biologic quality-related regulations for manufacturing, processing, packing or holding of drugs, biologics, or finished pharmaceuticals, and could take enforcement action against us, including requiring us to stop distribution of our products until we are in compliance with applicable regulations, which would reduce our revenue, increase our costs and adversely affect our business, prospects, results of operations and financial condition.
We are dependent on a limited number of customers.
Although we continue to expand our customer base, our current revenues are derived from a limited number of key customers. For the three months ended March 31, 2025 and 2024, customers that each individually contributed 10% or more of our total revenue accounted for 66% and 60% of our total revenues, respectively. We expect a limited number of customers to continue to account for a significant portion of our revenues for the foreseeable future. This customer concentration increases the risk of quarterly fluctuations in our revenues and operating results. The loss or reduction of business from one or a combination of our significant customers could materially adversely affect our revenues, financial condition and results of operations.
Some of our product supply agreements with customers, if in place, have finite duration, may not be extended or renewed and generally do not require the customer to purchase any particular quantity or quantities of our products.
Our product supply agreements with customers generally have a finite duration, may not be extended or renewed and generally do not require the customer to purchase any particular quantity or quantities of our products. Additionally, some customers order our products on a quote and purchase order basis under standard terms and conditions, with no guarantee of future orders. While our products are not considered commodities and may not be easily substituted for by our customers, particularly when our products are used in the manufacture of active pharmaceutical ingredients, our customers may nevertheless terminate or fail to renew their product supply agreements with us or significantly curtail their purchases thereunder under certain circumstances. We are working to develop new relationships with existing or new customers, but despite these efforts we may not, at the time that any of our existing product supply agreements expire or are terminated, or purchases thereunder curtailed, have other contracts in place generating similar or material revenue. Any such expiration, termination or reduction could materially adversely affect our revenues, financial condition and results of operations. For the three months ended March 31, 2025, we derived a majority of our product revenue from these product supply agreements.
The demand for our products depends in part on our customers’ research and development and the clinical and market success of their products. Our business, financial condition, and results of operations may be harmed if our customers spend less on, or are less successful in, these activities. In addition, customer spending may be affected by, among other things, general market and economic conditions beyond our control.
32


Our customers are engaged in research, development, production, and marketing of pharmaceutical products and intermediates. The amount our customers spend on research, development, production, and marketing, as well as the outcomes of such research, development, and marketing activities, have a large impact on our sales and profitability, particularly the amount our customers choose to spend on our offerings. Available resources, the need to develop new products, and consolidation in the industries in which our customers operate may have an impact on such spending. Our customers and potential customers finance their research and development spending from private and public sources. A reduction in available financing for and spending by our customers, for these reasons or because of continued unstable or unpredictable economic and marketplace conditions, could have a material adverse effect on our business, financial condition, and results of operations. If our customers are not successful in attaining or retaining product sales due to market conditions, reimbursement issues, or other factors, our results of operations may be materially adversely affected.
If we are unable to develop and commercialize new products for the pharmaceutical, biotherapeutics, diagnostics and life science tools markets, our business and prospects will be harmed.
We plan to launch new products for the pharmaceutical, biotherapeutics, diagnostics and other life science tools markets such as our ECO Synthesis manufacturing platform. These efforts are subject to numerous risks, including the following:
customers in these markets may be reluctant to adopt new manufacturing processes that use our enzymes;
we may be unable to successfully develop the enzymes or manufacturing processes for our products in a timely and cost-effective manner, if at all;
we may face difficulties in transferring the developed technologies to our customers and the contract manufacturers that we may use for commercial scale production of intermediates and enzymes in these markets;
the biotherapeutics products that use our tools may not receive regulatory approval or be commercially viable;
the contract manufacturers that we may use may be unable to scale their manufacturing operations to meet the demand for these products and we may be unable to secure additional manufacturing capacity;
customers may not be willing to purchase these products for these markets from us on favorable terms, if at all;
we may face product liability litigation, unexpected safety or efficacy concerns and product recalls or withdrawals;
our customers’ products may experience adverse events or face competition from new products, which would reduce demand for our products;
we may face pressure from existing or new competitive products; and
we may face pricing pressures from existing or new competitors, some of which may benefit from government subsidies or other incentives.
A reduction or delay in government funding of research and development for our customers may adversely affect our business.
A portion of our revenue is derived from customers whose funding is partially dependent on both the level and timing of funding from government sources, which funding can be difficult to forecast. Government funding of research and development is subject to the political process, which is inherently fluid and unpredictable. Our revenue may be adversely affected if our customers delay or limit purchases as a result of uncertainties surrounding the approval of government budget proposals, including reduced allocations to government agencies that fund research and development activities. If government proposals to reduce or eliminate budgetary deficits result in reduced allocations to government agencies that fund research and development activities, our results of operations may be materially adversely affected.
With respect to customers purchasing our products for the manufacture of APIs for which they have exclusivity due to patent protection, the termination or expiration of such patent protection and any resulting generic competition may materially and adversely affect our revenues, financial condition or results of operations.
With respect to customers purchasing our products for the manufacture of API, or to lead to the manufacture of API, for which exclusivity due to patent protection has or is about to expire, we can expect that the quantity of our products sold to such customers for such products may decline as generic competition for the API increases. While we anticipate that we may, in some cases, also be able to sell products to these generic competitors for the manufacture of these APIs, or lead to the manufacture of these APIs, the overall effect on our revenues, financial condition and results of operations could be materially adverse.
33


The services and offerings we provide are highly complex, and if we encounter problems providing the services or support required, our business could suffer.
The offerings we provide are highly complex, due in part to strict regulatory requirements and the inherent nature of services we provide, including exacting manufacturing processes. A failure of our quality control systems in our facilities could cause problems in connection with facility operations for a variety of reasons, including equipment malfunction, viral contamination, failure to follow specific manufacturing instructions, protocols and standard operating procedures, problems with raw materials or environmental factors. In addition, any failure to meet required quality standards may result in our failure to timely deliver products to our customers which, in turn, could damage our reputation for quality and service. Any such incident could, among other things, lead to increased costs, lost revenue, reimbursement to customers for lost drug substances, damage to and possibly termination of customer relationships, time and expense spent investigating and remediating the cause and, depending on the cause, similar losses with respect to other manufacturing runs. In addition, such issues could subject us to litigation, the cost of which could be significant. These risks will be intensified in connection with the build-out of our Innovation Lab, through which we expect to continue scaling specific manufacturing processes of our customers’ specific therapeutic assets and, eventually, expect to manufacture GLP-grade RNAi therapeutic material in sufficient quantities to support customers’ preclinical development.
Any productivity issues or higher-than-expected costs at our facilities could result in material and adverse impacts on our financial condition and results of operations.
As we continue to scale up our manufacturing processes in connection with the completed build-out of our Innovation Lab and our anticipated partnership with a CDMO to provide enzymatically synthesized, GMP-grade siRNA to customers, we may face manufacturing capacity constraints or higher-than-expected costs at our facilities, including our Innovation Lab. There can be no assurance that revenue lost due to productivity issues or capacity constraints will be recovered on expected timeframes or at all. If we are unsuccessful in remedying any productivity issues at our facilities or those of our CDMO, if we are unable to recover revenue from unproduced batches when expected or at all, or if costs at our facilities are higher than expected, we may experience material and adverse impacts on our financial condition and results of operations.
We are dependent on a limited number of third-party contract manufacturers for large scale production of substantially all of our enzymes. We are working to qualify new contract manufacturers to produce certain of our enzymes, however those efforts may not be successful and therefore we may experience limitations on our ability to supply our enzymes to customers.
We manufacture our enzymes primarily in four locations: our in-house facility in Redwood City, California, and at three third-party contract manufacturing organizations (“CMOs”): Lactosan in Kapfenberg, Austria, ACS Dobfar S.p.A. (“ACSD”) (formerly known as DPhar S.p.A) in Anagni, Italy, and Sekisui Diagnostics in Maidstone, United Kingdom. Generally, we perform smaller scale manufacturing in-house and outsource the larger scale manufacturing to these contract manufacturers. We have limited internal capacity to manufacture enzymes. As a result, we are dependent upon the performance and capacity of third-party manufacturers for the larger scale manufacturing of the enzymes used in our pharmaceutical and life sciences businesses.
Accordingly, we face risks of difficulties with, and interruptions in, performance by third party manufacturers, the occurrence of which could adversely impact the availability, launch and/or sales of our enzymes in the future. Enzyme manufacturing capacity limitations at our third-party manufacturers and manufacturing delays could negatively affect our business, reputation, results of operations and financial condition. The failure of any contract manufacturer to supply us our required volumes of enzyme on a timely basis, or to manufacture our enzymes in compliance with our specifications or applicable quality requirements or in volumes sufficient to meet demand, would adversely affect our ability to sell pharmaceutical and complex chemicals products, could harm our relationships with our customers or collaborators and could negatively affect our revenues and operating results. We may be forced to secure alternative sources of supply, which may be unavailable on commercially acceptable terms, and could cause delays in our ability to deliver products to our customers, increase our costs and decrease our profit margins.
34


We currently have supply agreements in place with Lactosan, ACSD and Sekisui. In the absence of a supply agreement, a contract manufacturer will be under no obligation to manufacture our enzymes and could elect to discontinue their manufacture at any time. If we require additional manufacturing capacity and are unable to obtain it in sufficient quantity, we may not be able to increase our product sales, or we may be required to make substantial capital investments to build that capacity or to contract with other manufacturers on terms that may be less favorable than the terms we currently have with our suppliers. If we choose to build our own additional manufacturing facility, it could take several years or longer before our facility is able to produce commercial volumes of our enzymes. Any resources we expend on acquiring or building internal manufacturing capabilities could be at the expense of other potentially more profitable opportunities. In addition, if we contract with other manufacturers, we may experience delays of several months in qualifying them, which could harm our relationships with our customers or collaborators and could negatively affect our revenues or operating results.
We are dependent on our collaborators, and our failure to successfully manage these relationships could prevent us from developing and commercializing many of our products and achieving or sustaining profitability.
Our ability to maintain and manage collaborations in our markets is fundamental to the success of our business. We currently have license agreements, research and development agreements, supply agreements and/or distribution agreements with various collaborators. We may have limited or no control over the amount or timing of resources that any collaborator is able or willing to devote to our partnered products or collaborative efforts. Any of our collaborators may fail to perform its obligations. These collaborators may breach or terminate their agreements with us or otherwise fail to conduct their collaborative activities successfully and in a timely manner. Further, our collaborators may not develop products arising out of our collaborative arrangements or devote sufficient resources to the development, manufacture, marketing or sale of these products. If any of these events occur, especially if they occur in our collaborations with GSK, Merck or Novartis, or if we fail to maintain our agreements with our collaborators, we may not be able to commercialize our existing and potential products or grow our business or generate sufficient revenues to support our operations, we may not receive contemplated milestone payments and royalties under the collaboration, and we may be involved in litigation. Our collaboration opportunities could be harmed and our financial condition and results of operations could be negatively affected if:
we or our collaborators do not achieve our research and development objectives under our collaboration agreements in a timely manner, or at all;
we develop products and processes or enter into additional collaborations that conflict with the business objectives of our other collaborators;
our collaborators and/or our contract manufacturers do not receive the required regulatory and other approvals necessary for the commercialization of the applicable product;
we are unable to manage multiple simultaneous collaborations;
our collaborators or licensees are unable or unwilling to implement or use the technology or products that we provide or license to them;
our collaborators become competitors of ours or enter into agreements with our competitors;
our collaborators become unable or less willing to expend their resources on research and development or commercialization efforts due to general market conditions, their financial condition or other circumstances beyond our control; or
our collaborators experience business difficulties, which could eliminate or impair their ability to effectively perform under our agreements.
Even after collaboration relationships expire or terminate, some elements of the collaboration may survive. For instance, certain rights, licenses and obligations of each party with respect to intellectual property and program materials may survive the expiration or termination of the collaboration.
Finally, our business could be negatively affected if any of our collaborators or suppliers undergoes a change of control or were to otherwise assign the rights or obligations under any of our agreements.
35


We have invested significant resources to enable enzymatic nucleic acid synthesis, which is based on novel ideas and technologies that are largely unproven.
Our ECO Synthesis manufacturing platform is designed to enable the commercial-scale manufacture of RNAi and other RNA-based therapeutics through an enzymatic route. While we believe enzymatic nucleic acid synthesis will offer certain improvements over phosphoramidite chemistry, including with respect to required infrastructure investments, batch size limitations and waste disposal challenges, the enzymatic route is novel and has not yet been commercialized. As such, we may be faced with unforeseen results, delays and setbacks, in addition to the other foreseeable risks and uncertainties associated with the ongoing development of the ECO Synthesis manufacturing platform and other products.
Other challenges with a new technology such as our ECO Synthesis manufacturing platform include having an unknown and unproven development and regulatory path, uncertainty around the value that we can realize from the technology, uncertainty around the timeline for adoption of the technology by customers, and uncertainty around our ability to secure supply of necessary materials or to manufacture at GMP at scale and partner with customers on manufacturing and utilizing the technology. We may also be unable to achieve the expected benefits of the ECO Synthesis manufacturing platform in a timely manner, or at all.
There can be no assurance that these events we may experience in the future related to enzymatic synthesis will not cause significant delays or unanticipated costs, or that such development problems can be solved. Any delay or difficulties in developing and commercializing our ECO Synthesis manufacturing platform or any of our other current or future products could adversely affect our business and operations.
Competitors and potential competitors who have greater resources and experience than we do may develop products and technologies that make ours obsolete or may use their greater resources to gain market share at our expense.
The biocatalysis and performance enzyme industries and each of our target markets are characterized by rapid technological change. Our future success will depend on our ability to maintain a competitive position with respect to technological advances. In addition, as we enter new markets, we will face new competition and will need to adapt to competitive factors that may be different from those we face today.
We are aware that other companies, including Ginkgo Bioworks, BRAIN Biotech AG, and Enzymicals AG, have alternative methods for obtaining and generating genetic diversity or use mutagenesis techniques to produce genetic diversity. Some companies, including Biomatter Designs, Arzeda Corp., and Enzymaster, leverage predictive computational algorithms to guide enzyme engineering efforts. In addition, academic institutions such as the California Institute of Technology, University of Washington, University of Manchester, and the Austrian Centre of Industrial Biotechnology are also working in this field. Technological development by others may result in our technology, products and services, as well as products developed by our customers using our biocatalysts, becoming obsolete.
Our primary competitors in the performance enzymes for the pharmaceutical products markets include (i) companies marketing either conventional, non-enzymatic processes or biocatalytic enzymes; (ii) manufacturers of pharmaceutical intermediates and APIs; and (iii) existing in-house technologies (both biocatalysts and conventional catalysts) within our client and potential client companies. The principal methods of competition and competitive differentiation in this market are price, product quality and performance, including manufacturing yield, safety and environmental benefits, and speed of delivery of product. Pharmaceutical manufacturers that use biocatalytic processes can face increased competition from manufacturers that use more conventional processes and/or manufacturers that are based in regions (such as India and China) with lower regulatory, safety and environmental costs.
The market for the manufacture and supply of APIs and intermediates is large with many established companies. These companies include many of our large innovator and generic pharmaceutical customers, such as Merck, GSK, Novartis, Pfizer Inc., Bristol-Myers Squibb, Kyorin Pharmaceutical Corporation, and Teva Pharmaceuticals, which have significant internal research and development efforts directed at developing processes to manufacture APIs and intermediates. The processes used by these companies include classical conventional organic chemistry reactions, chemo catalytic reactions, biocatalytic reactions or combinations thereof. Our biocatalytic based manufacturing processes must compete with these internally developed routes. Additionally, we also face competition from companies developing and marketing conventional catalysts such as Solvias Inc., BASF and Takasago International Corporation.
36


The market for supplying enzymes for use in pharma biocatalysis is fragmented. There is competition from large industrial enzyme companies, such as Novozymes and DuPont, as well as subsidiaries of larger contract research/CMOs, such as DSM-Firmenich AG, Cambrex Corporation, Lonza Group, WuXi STA and Almac Group Ltd. Some fermentation pathway design companies, like Ginkgo Bioworks, whose traditional focus has been to design microorganisms that express small molecule chemicals, could extend into designing organisms that express enzymes. There is also competition in the enzyme customization and optimization area from several smaller companies, such as BRAIN Biotech AG, Arzeda Corp., and c-LEcta GmbH.
We face competitive challenges related to our ECO Synthesis manufacturing platform. The current industry standard for manufacturing RNAi therapeutics is a well-established, chemical-based method, solid-phase oligonucleotide synthesis, utilizing phosphoramidite chemistry. Primary competitors in this space include CDMOs, such as Agilent Technologies, which has made significant capital investment to expand their RNA manufacturing capabilities using phosphoramidite chemistry. In addition, CDMOs and large pharmaceutical companies are seeking to make incremental improvements to phosphoramidite chemistry, including the development of ligation-based approaches, liquid-phase synthesis, and solvent recycling. There are also multiple early-stage competitors who are pursuing fully enzymatic approaches to the manufacture of RNA, including EnPlusOne Biosciences, a private startup company, and a UK-based consortium led by CPI and consisting of multiple academic and research organizations, including The University of Manchester and large pharmaceutical companies, including AstraZeneca plc and Novartis.
Our ability to compete successfully in any of these markets will depend on our ability to develop proprietary products that reach the market in a timely manner and are technologically superior to and/or are less expensive than other products on the market. Many of our competitors have substantially greater production, financial, research and development, personnel and marketing resources than we do. They also started developing products earlier than we did, which may allow them to establish blocking intellectual property positions or bring products to market before we can. In addition, certain of our competitors may also benefit from local government subsidies and other incentives that are not available to us. As a result, our competitors may be able to develop competing and/or superior technologies and processes, compete more aggressively and sustain that competition over a longer period of time than we could. Our technologies and products may be rendered obsolete or uneconomical by technological advances or entirely different approaches developed by one or more of our competitors. We cannot be certain that any products we develop in the future will compare favorably to products offered by our competitors or that our existing or future products will compare favorably to any new products that are developed by our competitors. As more companies develop new intellectual property in our markets, the possibility of a competitor acquiring patent or other rights that may limit our products or potential products increases, and could additionally lead to litigation.
Our limited resources relative to many of our competitors may cause us to fail to anticipate or respond adequately to new developments and other competitive pressures. This failure could reduce our competitiveness and market share, adversely affect our results of operations and financial position, and prevent us from obtaining or maintaining profitability.
We have investments in non-marketable securities, which may subject us to significant impairment charges.
We have investments in illiquid or non-marketable equity securities acquired in private transactions. As of March 31, 2025, 2.2% of our consolidated assets consisted of investment securities, which are illiquid investments. Investments in non-marketable, securities are inherently risky and difficult to value. We account for our non-marketable equity securities under the measurement alternative. Under the measurement alternative, the carrying value of our non-marketable equity investments is adjusted to fair value for observable transactions for identical or similar investments of the same issuer or impairment. We evaluate our investment in non-marketable securities when circumstances indicate that we may not be able to recover the carrying value. We may impair these securities and establish an allowance for a credit loss when we determine that there has been an “other-than-temporary” decline in estimated fair value of the equity security compared to its carrying value. The impairment analysis requires significant judgment to identify events or circumstances that would likely have a material adverse effect on the fair value of the investment. Future impairment charges from the write down in value of these securities could have a material adverse effect on our financial condition or results of operations.
Ethical, legal and social concerns about genetically engineered products and processes could limit or prevent the use of our technology, products and processes and limit our revenues.
Some of our technology, products and services, such as our ECO Synthesis manufacturing platform, are genetically engineered or involve the use of genetically engineered products or genetic engineering technologies. If we and/or our collaborators are not able to overcome the ethical, legal, and social concerns relating to genetic engineering, our technology, products and services may not be accepted. Any of the risks discussed below could result in increased expenses, delays, or other impediments to our programs or the public acceptance and commercialization of products and processes dependent on our technologies or inventions. Our ability to develop and commercialize one or more of our technologies, products, or processes could be limited by the following factors:
37


public attitudes about the safety and environmental hazards of, and ethical concerns over, genetic research and genetically engineered products and processes, which could influence public acceptance of our technologies, products and processes;
public attitudes regarding, and potential changes to laws governing ownership of, genetic material, which could harm our intellectual property rights with respect to our genetic material and/or discourage collaborators from supporting, developing, or commercializing our technology, products and services; and
governmental reaction to negative publicity concerning genetically modified organisms, which could result in greater government regulation of genetic research and derivative products.
The subject of genetically modified organisms has received negative publicity, which has aroused public debate. This adverse publicity could lead to greater regulation and trade restrictions on imports of genetically altered products. The biocatalysts that we develop have significantly enhanced characteristics compared to those found in naturally occurring enzymes or microbes. While we produce our biocatalysts only for use in a controlled industrial environment, the release of such biocatalysts into uncontrolled environments could have unintended consequences. Any adverse effect resulting from such a release could have a material adverse effect on our business and financial condition, damage our reputation, and/or expose us to liability for any resulting harm.
As a result of our strategic shift and our refined focus on certain programs and business lines, we may fail to capitalize on other opportunities that may be more profitable or for which there is a greater likelihood of success.
Because we have limited financial and managerial resources, we have recently focused our efforts on developing certain programs and business lines. As a result, we may forego or delay pursuit of business opportunities that later prove to have greater commercial potential. Further our resource allocation decisions may cause us to fail to capitalize on viable commercial products or profitable market opportunities. In addition, our spending on current and future research and development programs, such as our ECO Synthesis manufacturing platform that is in development, may not yield any commercially viable products. If we do not accurately evaluate the commercial potential or target market for a particular program or business line, our business and results of operations could be harmed.
Given our change in strategic direction, we may receive limited revenue or no future value from certain of our existing license agreements.
While we have historically invested significant time and financial resources in the development of biotherapeutics assets, we have terminated investment in our biotherapeutics business and in other programs. As a result, we are renegotiating some of these, along with other license agreements for product candidates in our biotherapeutics, food and feed, and non-core life science assets. For example, we entered into the Acquisition Agreement with Nestlé under which they acquired rights to our co-developed lipase enzyme CDX-7108 and we received an upfront payment and the right to downstream milestones and royalties, terminating our prior Strategic Collaboration Agreement and development agreement with Nestlé. While we are working to amend or terminate some of our agreements and enter into new agreements in such a way that we may be able to receive future revenue or other benefits, we may be unsuccessful in doing so. As a result, it remains uncertain as to whether we will receive any value or benefit from these license agreements going forward. Further, renegotiating these agreements may be costly and could divert management attention, which could have an adverse impact on our business and results of operations.
The timing of our customer orders and related product revenue recognition is unpredictable and may cause our operating results to vary significantly from quarter to quarter, which could adversely affect our stock price.
A majority of our product revenue is derived from purchase orders or supply agreements and is recognized either at a point in time when the control of the product has been transferred to the customer or over time as the product is manufactured. The occurrence and timing of any transfer of control of product sold to our customers can be difficult to predict, and the recognition of revenue can vary widely depending on timing of product deliveries and satisfaction of other obligations. Product orders during any given period may be concentrated in relatively few contracts, intensifying the amplitude and irregularity of our revenue streams from quarter to quarter. In addition, the timing of contract or order commencements and completions may exacerbate the uneven pattern. Moreover, our revenue or operating expenses in one period may be disproportionately higher or lower relative to the others due to, among other factors, revenue fluctuations or increases in expenses as we invest in key technology development projects and improvements, develop and commercialize new and existing products and expand our business development and collaboration with new customers. If such fluctuations occur or if our operating results deviate from our expectations or the expectations of investors or securities analysts, our stock price could be adversely affected.
38


We use hazardous materials in our business and we must comply with environmental laws and regulations. Any claims relating to improper handling, storage or disposal of these materials or noncompliance of applicable laws and regulations could be time consuming and costly and could adversely affect our business and results of operations.
Our research and development, manufacturing, and commercial processes involve the use of hazardous materials, including chemical, radioactive and biological materials, such as acetonitrile, which is used in some of our purification processes. Our operations also produce hazardous waste. We cannot eliminate entirely the risk of accidental contamination or discharge and any resultant injury from these materials. Federal, state, local and foreign laws and regulations govern the use, manufacture, storage, handling and disposal of, and human exposure to, these materials. We may face liability for any injury or contamination that results from our use or the use by third parties of these materials, and our liability may exceed our total assets. Although we believe that our activities comply in all material respects with environmental laws, there can be no assurance that violations of environmental, health and safety laws will not occur in the future as a result of human error, accident, equipment failure or other causes. Compliance with applicable environmental laws and regulations may be expensive, and the failure to comply with past, present or future laws could result in the imposition of fines, third party property damage, product liability and personal injury claims, investigation and remediation costs, the suspension of production or a cessation of operations, and our liability may exceed our total assets. Liability under environmental laws can be joint and several and without regard to comparative fault. Environmental laws could become more stringent over time imposing greater compliance costs and increasing risks and penalties associated with violations, which could impair our research, development or production efforts and harm our business. In addition, we may be required to indemnify some of our customers or suppliers for losses related to our failure to comply with environmental laws, which could expose us to significant liabilities.
Our ability to use our net operating loss carryforwards to offset future taxable income may be subject to certain limitations.
In general, under Section 382 of the Internal Revenue Code of 1986, as amended (the “Code”), a corporation that undergoes an “ownership change” is subject to limitations on its ability to utilize its pre-change net operating loss carryforwards (“NOLs”), to offset future taxable income. If the Internal Revenue Service challenges our analysis that our existing NOLs are not subject to limitations arising from previous ownership changes, our ability to utilize NOLs could be limited by Section 382 of the Code. Future changes in our stock ownership, some of which are outside of our control, could result in an ownership change under Section 382 of the Code. Furthermore, our ability to utilize NOLs of companies that we may acquire in the future may be subject to limitations. For these reasons, we may not be able to utilize a material portion of the NOLs reflected in our financial statements, even if we attain profitability.
As a public reporting company, we are subject to rules and regulations established from time to time by the SEC and Nasdaq regarding our internal controls over financial reporting. We may not complete needed improvements to our internal controls over financial reporting in a timely manner, or these internal controls may not be determined to be effective, which may adversely affect investor confidence in our company and, as a result, the value of our common stock and your investment.
We are subject to the rules and regulations established from time to time by the SEC and Nasdaq. These rules and regulations require, among other things, that we establish and periodically evaluate procedures with respect to our internal controls over financial reporting. As part of these evaluations, material weaknesses in our internal controls over financial reporting may be identified. A material weakness is a deficiency, or a combination of deficiencies, in internal controls over financial reporting such that there is a reasonable possibility that a material misstatement of a company’s annual or interim consolidated financial statements will not be prevented or detected on a timely basis. While we were able to remediate previously identified material weaknesses in our internal controls over financial reporting, there can be no guarantee we will not identify similar or other material weaknesses in the future and if such material weaknesses are identified, there can be no guarantee we would be able to remediate such material weaknesses. Any material weaknesses in our internal controls may adversely affect our ability to record, process, summarize and accurately report timely financial information and, as a result, our consolidated financial statements may contain material misstatements or omissions.
39


Reporting obligations as a public company place a considerable strain on our financial and management systems, processes and controls, as well as on our personnel. In addition, as a public company we are required to document and test our internal controls over financial reporting pursuant to Section 404 of the Sarbanes-Oxley Act so that our management can certify as to the effectiveness of our internal controls over financial reporting. Likewise, while we currently qualify as a “smaller reporting company” under the SEC rules, for any fiscal years in which we are not considered a smaller reporting company, our independent registered public accounting firm is required to provide an attestation report on the effectiveness of our internal controls over financial reporting in our Annual Reports on Form 10-K. If our management is unable to certify the effectiveness of our internal controls or if our independent registered public accounting firm cannot deliver a report attesting to the effectiveness of our internal controls over financial reporting, or if we identify or fail to remediate material weaknesses in our internal controls, we could be subject to regulatory scrutiny and a loss of public confidence, which could seriously harm our reputation and the market price of our common stock. In addition, if we do not maintain adequate financial and management personnel, processes and controls, we may not be able to manage our business effectively or accurately report our financial performance on a timely basis, which could cause a decline in our common stock price and may seriously harm our business.
We may need additional capital in the future in order to expand our business.
Our future capital requirements may be substantial, particularly as we continue to develop our business. Although we believe that, based on our current level of operations, our existing cash, cash equivalents and equity securities will provide adequate funds for ongoing operations, planned capital expenditures and working capital requirements for at least the next 12 months, we may need additional capital if our current plans and assumptions change. Our need for additional capital will depend on many factors, including the financial success of our performance enzyme business, our spending to develop and commercialize new and existing enzyme products and the amount of collaboration funding we may receive to help cover the cost of such expenditures, the effect of any acquisitions of other businesses, technologies or facilities that we may make or develop in the future, our spending on new market opportunities, including the ongoing commercialization of our ECO Synthesis manufacturing platform, scaling the ECO Synthesis manufacturing platform to GMP capability, and the filing, prosecution, enforcement and defense of patent claims. If our capital resources are insufficient to meet our capital requirements, and we are unable to enter into or maintain collaborations with partners that are able or willing to fund our development efforts or commercialize any enzyme products that we develop or enable, we will have to raise additional funds to continue the development of our technology and products and complete the commercialization of products, if any, resulting from our technologies.
In addition, we may choose to raise additional capital due to market conditions or strategic considerations, such as funding the ongoing commercialization of our ECO Synthesis manufacturing platform and a GMP manufacturing facility, even if we believe we have sufficient funds for our current or future operating plans. We may seek to obtain such additional capital through equity offerings, including pursuant to our Controlled Equity Offering℠ Sales Agreement (the “Cantor Sales Agreement”) with Cantor Fitzgerald & Co., as sales agent (“Cantor”), debt financings, credit facilities and/or strategic collaborations. If future financings involve the issuance of equity securities, our existing stockholders would suffer dilution. In addition, under our Loan Agreement with Innovatus, we are subject to restrictive covenants that limit our ability to conduct our business and could be subject to additional covenants to the extent we seek other debt financing in the future. Strategic collaborations may also place restrictions on our business. We may not be able to raise sufficient additional funds on terms that are favorable to us, if at all. If we fail to raise sufficient funds and fail to generate sufficient revenues to achieve planned gross margins and to control operating costs, our ability to fund our operations, take advantage of strategic opportunities, develop products or technologies, or otherwise respond to competitive pressures could be significantly limited. If this happens, we may be forced to delay or terminate research or development programs or the commercialization of products resulting from our technologies, curtail or cease operations or obtain funds through collaborative and licensing arrangements that may require us to relinquish commercial rights, or grant licenses on terms that are not favorable to us. If adequate funds are not available, we will not be able to successfully execute our business plan or continue our business.
Covenants and other provisions in our Loan Agreement with Innovatus restrict our business and operations in many ways, and if we do not effectively manage our covenants, our financial conditions and results of operations could be adversely affected. In addition, our operations may not provide sufficient cash to meet the repayment obligations of our debt incurred under the Loan Agreement.
Pursuant to the Loan Agreement, Innovatus has been granted a security interest in substantially all of our assets. If an event of default occurs under the Loan Agreement, Innovatus may foreclose on its security interest and liquidate some or all of these assets, which would harm our business, financial condition and results of operations.
In the event of a default in connection with our bankruptcy, insolvency, liquidation, or reorganization, Innovatus would have a prior right to substantially all of our assets to the exclusion of our general unsecured creditors. Only after satisfying the claims of Innovatus and any unsecured creditors would any amount be available for our equity holders.
40


The pledge of these assets and other restrictions imposed in the Loan Agreement may limit our flexibility in raising capital for other purposes. Because substantially all of our assets are pledged to secure the Loan Agreement obligations, our ability to incur additional indebtedness or to sell or dispose of assets to raise capital may be impaired, which could have an adverse effect on our financial flexibility.
In addition, if we are unable to comply with certain financial and operating restrictions in the Loan Agreement, we may be limited in our business activities and access to credit or may default under the Loan Agreement. Provisions in the Loan Agreement impose restrictions or require prior approval on our ability, and the ability of certain of our subsidiaries to, among other things:
sell, lease or transfer certain parts of our business or property, including equity interests of our subsidiaries;
engage in new lines of business;
acquire new companies and merge or consolidate;
incur additional debt or guarantee the indebtedness of others or our subsidiaries;
create liens or encumbrances;
pay cash dividends and make distributions or redeem or repurchase our capital stock;
make certain investments;
enter into transactions with affiliates; and
terminate or, in certain cases, amend our material agreements.
The Loan Agreement also contains other customary covenants. We may not be able to comply with these covenants in the future. Our failure to comply with these covenants may result in the declaration of an event of default, which, if not cured or waived, may result in the acceleration of the maturity of indebtedness outstanding under the Loan Agreement and would require us to pay all amounts outstanding. If the maturity of our indebtedness is accelerated, we may not have sufficient funds then available for repayment or we may not have the ability to borrow or obtain sufficient funds to replace the accelerated indebtedness on terms acceptable to us or at all. Our failure to repay our obligations under the Loan Agreement could result in Innovatus foreclosing on all or a portion of our assets, which could force us to curtail or cease our operations.
If we engage in any acquisitions, we will incur a variety of costs and may potentially face numerous risks that could adversely affect our business and operations.
We have made acquisitions in the past, and if appropriate opportunities become available, we expect to acquire additional businesses, assets, technologies, or products to enhance our business in the future. For example, in October 2010, we acquired substantially all of the patents and other intellectual property rights associated with Maxygen’s directed evolution technology.
In connection with any future acquisitions, we could:
issue additional equity securities, which would dilute our current stockholders;
incur substantial debt to fund the acquisitions;
use our cash to fund the acquisitions; or
assume significant liabilities including litigation risk.
41


Acquisitions involve numerous risks, including problems integrating the purchased operations, technologies or products, unanticipated costs and other liabilities, diversion of management’s attention from our core businesses, adverse effects on existing business relationships with current and/or prospective collaborators, customers and/or suppliers, risks associated with entering markets in which we have no or limited prior experience and potential loss of key employees. We do not have extensive experience in managing the integration process and we may not be able to successfully integrate any businesses, assets, products, technologies or personnel that we might acquire in the future without a significant expenditure of operating, financial and management resources, if at all. The integration process could divert management’s time from focusing on operating our business, result in a decline in employee morale and cause retention issues to arise from changes in compensation, reporting relationships, future prospects or the direction of the business. Acquisitions may also require us to record goodwill and non-amortizable intangible assets that will be subject to impairment testing on a regular basis and potential periodic impairment charges, incur amortization expenses related to certain intangible assets, and incur large and immediate write offs and restructuring and other related expenses, all of which could harm our operating results and financial condition. In addition, we may acquire companies that have insufficient internal financial controls, which could impair our ability to integrate the acquired company and adversely impact our financial reporting. If we fail in our integration efforts with respect to any of our acquisitions and are unable to efficiently operate as a combined organization, our business and financial condition may be adversely affected.
Risks Related to Government Regulation
Even if our customers, future customers or collaborators obtain regulatory approval for any products utilizing our enzymes, such products will remain subject to ongoing regulatory requirements, which may result in significant additional expense.
Any product that receives FDA approval will remain subject to ongoing regulatory requirements for manufacturing, labeling, packaging, distribution, storage, advertising, promotion, sampling, record-keeping and submission of safety and other post-market information, among other things. Any regulatory approvals received for such products may also be subject to limitations on the approved indicated uses for which they may be marketed or to the conditions of approval, or contain requirements for potentially costly post-marketing testing and surveillance studies. For example, the holder of an approved NDA or BLA in the United States is obligated to monitor and report adverse events and any failure of a product to meet the specifications in the NDA or BLA. In the United States, the holder of an approved NDA or BLA must also submit new or supplemental applications and obtain FDA approval for certain changes to the approved product, product labeling or manufacturing process. Similar provisions apply in the European Union (the “EU”). Advertising and promotional materials must comply with FDA rules and are subject to FDA review, in addition to other potentially applicable federal and state laws. Similarly, in the EU any promotion of medicinal products is highly regulated and, depending on the specific jurisdiction involved, may require prior vetting by the competent national regulatory authority. In addition, product manufacturers and their facilities are subject to payment of user fees and continual review and periodic inspections by the FDA and other regulatory authorities for compliance with cGMP requirements and adherence to commitments made in the NDA, BLA or foreign marketing application.
If our customers, future customers or our collaborators or a regulatory agency discovers previously unknown problems with a product such as adverse events of unanticipated severity or frequency or problems with the facility where the product is manufactured or disagrees with the promotion, marketing or labeling of that product, a regulatory agency may impose restrictions relative to that product, the manufacturing facility or our customers or collaborators, including requiring recall or withdrawal of the product from the market or suspension of manufacturing.
In addition, if our customers or collaborators fail to comply with applicable regulatory requirements, the FDA and other regulatory authorities may:
issue an untitled letter or a warning letter asserting a violation of the law;
seek an injunction, impose civil or criminal penalties, and impose monetary fines, restitution or disgorgement of profits or revenues;
suspend or withdraw regulatory approval;
issue safety alerts, Dear Healthcare Provider letters, press releases or other communications containing warnings or other safety information about the product;
mandate modification of promotional materials and labeling and issuance of corrective information;
issue consent decrees or corporate integrity agreements, or debar or exclude from federal healthcare programs;
42


suspend or terminate any ongoing clinical trials or implement requirements to conduct post-marketing studies or clinical trials;
refuse to approve a pending NDA, BLA or comparable foreign marketing application (or any supplements thereto);
restrict the labeling, marketing, distribution, use or manufacturing of products;
seize or detain products or otherwise require the withdrawal or recall of products from the market;
refuse to approve pending applications or supplements to approved applications;
refuse to permit the import or export of products; or
refuse government contracts.
Any government investigation of alleged violations of law could require us to expend significant time and resources in response and could generate negative publicity. The occurrence of any event or penalty described above may also inhibit our customers or collaborators’ ability to commercialize products and our ability to generate revenues.
In addition, the FDA’s policies, and policies of foreign regulatory agencies, may change, including due to judicial challenges, and additional regulations may be enacted that could prevent, limit or delay regulatory approval of product candidates. We cannot predict the likelihood, nature or extent of government regulation that may arise from future legislation or administrative or executive action, either in the United States or abroad. If we are slow or unable to adapt to changes in existing requirements or the adoption of new requirements or policies, or if we are not able to maintain regulatory compliance, we may be subject to enforcement action and we may not achieve or sustain profitability.
If we or our customers fail to comply with certain healthcare laws, including fraud and abuse laws, we could face substantial penalties and our business, results of operations, financial condition and prospects could be adversely affected.
The healthcare industry is highly regulated. We, and our customers, are subject to various local, state, federal, national, and international laws and regulations, which include laws and regulations promulgated by the FDA, HHS, state boards of pharmacy, state health departments, and similar regulatory bodies in other countries. Additionally, our business operations and future arrangements with investigators, healthcare professionals, and consultants, among others, may expose us and our customers to broadly applicable fraud and abuse and other healthcare laws and regulations, including, without limitation, the federal Anti-Kickback Statute, the federal civil False Claims Act, the federal Civil Monetary Penalties Law, and analogous state laws. These laws may constrain the business or financial arrangements and relationships through which we will conduct our operations. Because of the breadth of these laws and narrowness of available statutory and regulatory exceptions, it is possible that some of our business activities could be regulated by or subject to challenge under one or more of such laws. We cannot ensure that our compliance controls, policies, and procedures will in every instance protect us from acts of our employees, agents, contractors, or collaborators that turn out to violate any of the laws described above. If we or our operations are found to be in violation of any of the laws described above or any other governmental regulations that apply to us, we may be subject to penalties, including civil and criminal penalties, damages, fines, imprisonment and the curtailment or restructuring of our operations, any of which could materially adversely affect our ability to operate our business and our financial results.
Ongoing healthcare legislative and regulatory reform measures may have a material adverse effect on our business and results of operations.
In the United States, there have been, and we expect there will continue to be, a number of legislative, regulatory, and administrative initiatives to contain healthcare costs. Some of these initiatives, such as ongoing healthcare reform, including with respect to reforming drug pricing, adverse changes in governmental or private funding of healthcare products and services, legislation or regulations governing patient access to care, and the delivery, coverage, pricing, and reimbursement of pharmaceuticals and healthcare services may cause our customers to change the amount of our offerings that they purchase from us or the price they are willing to pay us for these offerings. The timing of legislative, regulatory or executive action related to future healthcare reforms, if any, remains uncertain. Results of the 2024 U.S. Presidential and Congressional elections, and subsequent developments, have increased and may continue to increase the uncertainty related to healthcare regulatory environment. If cost-containment efforts or other healthcare reform measures limit our customers’ profitability, they may decrease research and development spending, which could decrease the demand for our products and services and materially adversely affect our growth prospects. Any of these factors could harm our customers’ businesses, which, in turn, could materially adversely affect our business, financial condition, results of operations, cash flows, and prospects.
43


We cannot predict the likelihood, nature, or extent of other health reform initiatives that may arise from future legislative, administrative, or other action. Any substantial revision of applicable healthcare legislation or regulation could have a material adverse effect on the demand for our customers’ products, which in turn could have a negative impact on our results of operations, financial condition, or business. Changes in the healthcare industry’s pricing, selling, inventory, distribution, or supply policies or practices, or in public or government sentiment for the industry as a whole, could also significantly reduce our revenue and results of operations.
Compliance with European Union chemical regulations could be costly and adversely affect our business and results of operations.
Some of our products are subject to the EU regulatory regime known as The Registration, Evaluation and Authorization of Chemicals (“REACH”). REACH mandates that certain chemicals manufactured in, or imported into, the EU be registered and evaluated for their potential effects on human health and the environment. Under REACH, we and our contract manufacturers located in the EU are required to register certain of our products based on the quantity of such product imported into or manufactured in the EU and on the product’s intended end-use. The registration, evaluation and authorization process under REACH can be costly and time consuming. Problems or delays in the registration, evaluation or authorization process under REACH could delay or prevent the manufacture of some of our products in, or the importation of some of our products into, the EU, which could adversely affect our business and results of operations. In addition, if we or our contract manufacturers fail to comply with REACH, we may be subject to penalties or other enforcement actions, which could have a material adverse effect on our business and results of operations.
The biopharmaceutical industry is subject to extensive regulatory obligations and policies that may be subject to significant and abrupt change, including due to judicial challenges, election cycles, and resulting regulatory updates and changes in policy priorities.
In June 2024, the U.S. Supreme Court issued an opinion holding that courts reviewing agency action pursuant to the Administrative Procedure Act “must exercise their independent judgment” and “may not defer to an agency interpretation of the law simply because a statute is ambiguous.” The decision will have a significant impact on how lower courts evaluate challenges to agency interpretations of law, including those by HHS, the FDA, CMS and other agencies with significant oversight of the biopharmaceutical industry. The new framework is likely to increase both the frequency of such challenges and their odds of success by eliminating one way in which the government previously prevailed in such cases. As a result, significant regulatory policies will be subject to increased litigation and judicial scrutiny.
In addition, federal agency priorities, leadership, policies, rulemaking, communications, spending and staffing may be significantly impacted by election cycles. For example, the current U.S. presidential administration has committed to significantly reduce government spending through cuts to federal healthcare programs and reductions in the workforces of key government agencies, such as HHS, the FDA and CMS. Efforts by the current administration to limit federal agency budgets or personnel may result in reductions to agency budgets, employees and operations, which may lead to slower response times and longer review periods, potentially affecting the ability of our customers, future customers or collaborators to obtain regulatory approval for their product candidates utilizing our enzyme products. Any resulting changes in regulation may result in unexpected delays, increased costs, or other negative impacts on our business that are difficult to predict.
Risks Related to Intellectual Property
Our efforts to prosecute, maintain, protect and/or defend our intellectual property rights may not be successful.
We will continue to file and prosecute patent applications and maintain trade secrets in an ongoing effort to protect our intellectual property rights. It is possible that our current patents, or patents which we may later acquire, may be successfully challenged or invalidated, in whole or in part. It is also possible that we may not obtain issued patents from our pending patent applications. We sometimes permit certain patents or patent applications to lapse or go abandoned under appropriate circumstances. Due to uncertainties inherent in prosecuting patent applications, sometimes patent applications are rejected, and we subsequently abandon them. It is also possible that we may develop proprietary technology, products or services in the future that are not patentable or that the patents of others will limit or altogether preclude our ability to conduct business. In addition, any patent issued to us or to our licensor may provide us with little or no competitive advantage, in which case we may abandon such patent, license it to another entity or terminate the license agreement.
44


Our means of protecting our proprietary rights may not be adequate and our competitors may independently develop technologies, products or services that are identical or similar to ours or that compete with ours. Patent, trademark, copyright and trade secret laws afford only limited protection for our technology, products and services. The laws of many countries do not protect our proprietary rights to as great of an extent as do the laws of the United States. Despite our efforts to protect our proprietary rights, unauthorized parties have in the past attempted, and may in the future attempt, to operate under the aspects of our intellectual property rights, or proprietary technology, products or services or products, or to obtain and use information that we regard as proprietary. Third parties may also design around our proprietary rights, which may render our protected technology, services and products less valuable, if the design around is favorably received in the marketplace. In addition, if any of our technology, products and services are covered by third-party patents or other intellectual property rights, we could be subject to various legal actions. For example, we are aware of certain third-party intellectual property that does or may overlap with aspects of the Company’s technology. We cannot assure that our technology products and/or services do not infringe, violate or misappropriate any patents or other intellectual property rights owned or controlled by others or that they will not in the future.
Litigation may be necessary to enforce our intellectual property rights, to protect our trade secrets, to determine the validity and scope of the proprietary rights of others, or to defend against claims of infringement, invalidity, misappropriation, or other claims.
Any such litigation could result in substantial costs and diversion of our resources. Moreover, any settlement of or adverse judgment resulting from litigation relating to intellectual property rights could require us to obtain a license to continue to make, use, import, sell or offer for sale the technology, products or services that is the subject of the claim, or otherwise restrict or prohibit our use of the technology, products or services.
Our ability to compete may decline if we do not adequately prosecute, maintain, protect and/or defend our proprietary technology, products or services or our intellectual property rights.
Our success depends in part on our ability to obtain patents and maintain adequate protection of our intellectual property rights directed to our technology, products and services in the United States and other countries. We have adopted a strategy of seeking patent protection in the United States and in foreign countries with respect to certain of the technology used in or relating to our products, services, and processes. As such, as of March 31, 2025, we owned or controlled approximately 1,650 active issued patents and pending patent applications in the United States and in various foreign jurisdictions. As of March 31, 2025, our patents and patent applications, if issued, have terms that expire between 2025 and approximately 2045. We also have license rights to a number of issued patents and pending patent applications in the United States and in various foreign jurisdictions. Our owned and licensed patents and patent applications include those directed to our enabling technology and to the methods and products that support our business in the pharmaceutical manufacturing, life sciences, oligonucleotide synthesis, and other markets. We intend to continue to apply for patents relating to our technology, methods, services and products as we deem appropriate.
Issuance of claims in patent applications and enforceability of such claims once issued involve complex legal and factual questions and, therefore, we cannot predict with any certainty whether any of our issued patents will survive invalidity claims asserted by third parties. Issued patents and patents issuing from pending applications may be challenged, invalidated, circumvented, rendered unenforceable or substantially narrowed in scope. In addition, the inventorship and ownership of the patents and patent applications may be challenged by others. Moreover, the United States Leahy-Smith America Invents Act (“AIA”), enacted in September 2011, brought significant changes to the United States patent system, which include a change to a “first to file” system from a “first to invent” system and changes to the procedures for challenging issued patents and disputing patent applications during the examination process, among other things. While interference proceedings are possible for patent claims filed prior to March 16, 2013, many of our filings will be subject to the post- and pre-grant proceedings set forth in the AIA, including citation of prior art and written statements by third parties, third party pre-issuance submissions, ex parte reexamination, inter partes review, post-grant review, and derivation proceedings. We may need to utilize the processes provided by the AIA for supplemental examination or patent reissuance. These proceedings could result in substantial cost to us even if the outcome is favorable. Even if successful, any proceeding may result in loss of certain claims. Any litigation or proceedings could divert our management's time and efforts. Even unsuccessful claims brought by third parties could result in significant legal fees and other expenses, diversion of management time, and disruption in our business. Uncertainties resulting from initiation and continuation of any patent or related litigation could harm our ability to compete.
45


Additional uncertainty may result from legal precedent handed down by the United States Federal Circuit Court and Supreme Court as they determine legal issues concerning the scope and construction of patent claims and inconsistent interpretation of patent laws by the lower courts. Accordingly, we cannot ensure that any of our pending patent applications will result in issued patents, or even if issued, predict the breadth of the claims upheld in our, our licensors', and other companies' patents. Given that the degree of future protection for our proprietary rights is uncertain, we cannot ensure that: (i) we or our licensors were the first to invent the inventions covered by each of our pending applications, (ii) we or our licensors were the first to file patent applications for these inventions, or (iii) the proprietary technology, products or services we develop will be patentable. In addition, unauthorized parties may attempt to copy or otherwise obtain and use our technology, products and services. Monitoring unauthorized use of our intellectual property rights is difficult, and we cannot be certain that the steps we have taken will prevent unauthorized use of our technology, products or services, particularly in certain foreign countries where the local laws may not protect our proprietary rights as fully as in the United States. Moreover, third parties could practice our inventions in territories where we do not have patent protection. Such third parties may then try to import products made using our inventions into the United States or other countries. If competitors are able to use our proprietary technology, products or services, our ability to compete effectively could be harmed. In addition, others may independently develop and obtain patents for technologies, products or services that are similar to or superior to our technologies, products or services. If that happens, we may need to license these technologies, products or services, and we may not be able to obtain licenses on reasonable terms, if at all, which could cause harm to our business.
Similarly, foreign courts have made, and will likely continue to make, changes in how the patent laws in their respective jurisdictions are interpreted. Changes in patent laws and regulations in other countries or jurisdictions, changes in the governmental bodies that enforce them, or changes in how the relevant governmental authority enforces patent laws or regulations may weaken our ability to obtain new patents or to enforce patents that we own or may obtain in the future. For example, in some cases, we have filed for unitary patent protection under the rules implemented on June 1, 2023, in the European Patent Office. We will continue to assess this route of protection on a case-by-case basis, as applications are filed and patents are granted through the European Patent Office. This may alter our ability to protect our patents in some European countries. Further, the laws of some foreign countries do not protect proprietary rights to the same extent or in the same manner as the laws of the United States. For example, in some foreign jurisdictions, governments have the right to compel patent owners to grant others licenses to their intellectual property under certain circumstances. In addition, any protection afforded by foreign patents may be more limited than that provided under U.S. patent and intellectual property laws. We may encounter significant problems in enforcing and defending our intellectual property both in the United States and abroad. For example, if the issuance in a given country of a patent covering an invention is not followed by the issuance in other countries of patents covering the same invention, or if any judicial interpretation of the validity, enforceability or scope of the claims or the written description or enablement in a patent issued in one country is not similar to the interpretation given to the corresponding patent issued in other countries, our ability to protect our intellectual property rights in those countries may be limited. Changes in either patent laws or in interpretations of patent laws in the United States and other countries may materially diminish the value of our intellectual property rights or narrow the scope of our patent protection. We cannot predict future changes in the interpretation of patent laws or changes to patent laws that might be enacted into law by U.S. and foreign legislative bodies. Those changes may materially affect our patents or patent applications and our ability to obtain additional patent protection in the future. Any of the foregoing could have a material adverse effect on our competitive position, business, financial condition, results of operations and prospects.
Third parties may claim that we are infringing, violating or misappropriating their intellectual property rights, which may subject us to costly and time-consuming litigation and prevent us from developing or commercializing our technology, products or services.
Our commercial success also depends in part on our ability to operate without infringing, violating or misappropriating patents and other intellectual property rights of third parties, and without breaching any licenses or other agreements that we have entered into with regard to our technologies, products or services. We cannot ensure that patents have not been issued, or will not be issued, to third parties that could block our ability to obtain patents or to operate as we would like. There may be patents in some countries that, if valid, may block our ability to make, use, sell, or offer for sale our technology, products or services in those countries, or import our products into those countries, if we are unsuccessful in circumventing or acquiring rights to these patents. There also may be claims in patent applications filed in some countries that, if granted and valid, may also block our ability to commercialize technology, products, services or processes in these countries if we are unable to circumvent or obtain rights to them.
46


The industries in which we operate and the biotechnology industry, in particular, are characterized by frequent and extensive litigation regarding patents and other intellectual property rights. Many biotechnology companies have employed intellectual property litigation as a way to gain a competitive advantage. We are aware of some patents and patent applications relating to aspects of our technologies, products or services filed by, and issued to, third parties. We cannot assure that if such third-party patents rights are asserted against us that we would ultimately prevail. Any involvement in litigation or other intellectual property proceedings inside and/or outside of the United States to defend against claims that we infringe, misappropriate or violate the intellectual property rights of others may divert our management’s time from focusing on business operations and could cause us to spend significant amounts of money. Any potential intellectual property litigation also could force us to do one or more of the following:
stop making, using, selling, offering for sale or importing our technologies, products and services that use the subject intellectual property;
pay monetary damages to the third party asserting claims against us;
grant or transfer rights to third parties relating to our patents or other intellectual property rights;
obtain from the third party asserting its intellectual property rights a license to make, sell, offer for sale, import or use the relevant technology, product or service, which license may not be available on reasonable terms, or at all; or
redesign those technologies, products, services or processes that use any allegedly infringing, misappropriated or violated intellectual property rights, or relocate the operations relating to the allegedly infringing, misappropriated or violated intellectual property rights to another jurisdiction, which may result in significant cost or delay to us, could be technically infeasible or could prevent us from making, selling, offering for sale, using or importing some of our technologies, products or services in the United States or other jurisdictions.
We may be involved in lawsuits to protect or enforce our intellectual property rights, which could be expensive, time-consuming and unsuccessful.
Competitors may infringe, violate or misappropriate our intellectual property rights or those of our licensors. To prevent infringement, violation, misappropriation or other unauthorized use, we have in the past filed, and may in the future be required to file, enforcement claims, which can be expensive and time-consuming. In addition, in an enforcement proceeding, a court may decide that the intellectual property right that we own or control is not valid, is unenforceable and/or is not infringed, violated or misappropriated. In addition, in legal proceedings against a third party to enforce a patent directed at one of our technologies, products or services, the defendant could counterclaim that our patent is invalid and/or unenforceable in whole or in part. In patent enforcement litigation in the United States, defendant counterclaims alleging invalidity and/or unenforceability are commonplace. Grounds for a patent validity challenge include an alleged failure to meet any of several statutory requirements, including lack of novelty, obviousness or non-enablement. Grounds for an unenforceability assertion could include an allegation that someone connected with prosecution of the patent withheld relevant information from the United States Patent and Trademark Office (“USPTO”) or made a misleading statement during prosecution. Third parties may also raise similar claims before the USPTO, even outside the context of enforcement litigation. The outcome following legal assertions of invalidity and unenforceability is unpredictable, and prior art could render our patents or those of our licensors invalid. If a defendant were to prevail on a legal assertion of invalidity and/or unenforceability, we would lose at least part, and perhaps all, of the patent protection on the respective technology, products or services. Such a loss of patent protection could have a material adverse impact on our business.
Even if resolved in our favor, litigation or other legal proceedings relating to our intellectual property rights may cause us to incur significant expenses and could distract our technical and management personnel from their normal responsibilities. In addition, there could be public announcements of the results of hearings, motions or other interim proceedings or developments and if securities analysts or investors perceive these results to be negative, it could have a substantial adverse effect on the price of our common stock. Such litigation or proceedings could substantially increase our expenses and reduce the resources available for operations and research and development activities. We may not have sufficient financial or other resources to conduct such litigation or proceedings adequately. Some of our competitors may be able to sustain the costs of such litigation or proceedings more effectively than we can because of their greater financial resources. Uncertainties resulting from the initiation and continuation of patent litigation or other proceedings could compromise our ability to compete in the marketplace. Furthermore, because of the substantial amount of discovery required in connection with U.S. intellectual property litigation, there is a risk that some of our confidential information could be compromised by disclosure during this type of litigation.
47


We may not be able to enforce our intellectual property rights throughout the world.
The laws of some foreign countries where we do business do not protect intellectual property rights to the same extent as the laws of the United States. Many companies have encountered significant problems in protecting and enforcing intellectual property rights in certain foreign jurisdictions. The legal systems of certain countries, particularly certain developing countries, do not favor the enforcement of patents and other intellectual property rights, particularly those relating to biotechnology technologies. Accordingly, our efforts to protect and enforce our intellectual property rights in such countries may be inadequate. This could make it difficult for us to stop the infringement, violation or misappropriation of our patents or other intellectual property rights. Additionally, proceedings to enforce our patent rights in foreign jurisdictions could result in substantial costs and divert our efforts and attention from other aspects of our business.
If our biocatalysts, or the genes that code for our biocatalysts, are stolen, misappropriated or reverse engineered, others could use these biocatalysts or genes to produce competing products.
Third parties, including our contract manufacturers, customers and those involved in shipping our biocatalysts, often have custody or control of our biocatalysts. If our biocatalysts, or the genes that code for our biocatalysts, were stolen, misappropriated or reverse engineered, they could be used by other parties who may be able to reproduce these biocatalysts for their own commercial gain. If this were to occur, it may be difficult for us to challenge this type of use, especially in countries with limited intellectual property rights protection or in countries in which we do not have patents covering the misappropriated biocatalysts.
Confidentiality and non-use agreements with employees, consultants, advisors and other third parties may not adequately prevent disclosures and non-use of trade secrets and other proprietary information.
In addition to patent protection, we also rely on other intellectual property rights, including protection of copyright, trade secrets, know-how and/or other proprietary information that is not patentable or that we elect not to patent. However, trade secrets can be difficult to protect, and some courts are less willing or unwilling to protect trade secrets. To maintain the confidentiality of our trade secrets and proprietary information, we rely in part on trade secret law and contractual agreements to protect our confidential and proprietary information and processes. We generally enter into confidentiality and invention assignment agreements with our employees, consultants and third parties working on our behalf upon their commencement of a relationship with us. However, trade secrets and confidential information are difficult to protect and we cannot guarantee that we have entered into such agreements with each party that may have or have had access to our trade secrets or proprietary technology and processes and we may not enter into such agreements with all employees, consultants and third parties who have been involved in the development of our intellectual property rights. Nevertheless, without our permission or awareness, our confidential and proprietary information may be disclosed to third parties, used by the respective individuals for purposes other than for the Company’s business, or obtained through illegal means, such that third parties could reverse engineer our biocatalysts, enzyme products and processes, to attempt to develop the same technology or develop substantially equivalent technology.
Costly and time-consuming litigation could be necessary to enforce and determine the scope of our confidential and proprietary rights, and failure to protect our trade secrets could adversely affect our competitive business position. If any of our trade secrets were lawfully obtained, we may be unable to prevent them, or those to whom they communicate it, from using that technology or information to compete with us or disclosing it publicly. Therefore, these events could have a material adverse effect on our business, financial condition and results of operations. In particular, a failure to protect our proprietary rights may allow competitors to copy our technology, which could adversely affect our pricing and market share.
In addition to contractual measures, we try to protect the confidential nature of our proprietary information by maintaining physical security of our premises and electronic security of our information technology systems. Such security measures may not, for example, in the case of misappropriation of a trade secret by an employee, consultant or other third party with authorized access or with unauthorized access but an intent to steal, provide adequate protection for our proprietary information. Our security measures may not prevent such employee, consultant or other third party from misappropriating our trade secrets and using them or providing them to a competitor, and recourse we take against such misconduct may not provide an adequate remedy to protect our interests fully. While we use commonly accepted security measures, trade secret violations are often a matter of state law in the United States, and the criteria for protection of trade secrets can vary among different jurisdictions. If the steps we have taken to maintain our trade secrets are deemed inadequate, we may have insufficient recourse against third parties for misappropriating the trade secret.
48


Risks Related to Owning our Common Stock
We are subject to anti-takeover provisions in our certificate of incorporation and bylaws and under Delaware law that could delay or prevent an acquisition of our company, even if the acquisition would be beneficial to our stockholders.
Provisions in our amended and restated certificate of incorporation and our bylaws may delay or prevent an acquisition of the Company. Among other things, our amended and restated certificate of incorporation and bylaws provide for a board of directors which is divided into three classes, with staggered three-year terms and provide that all stockholder action must be effected at a duly called meeting of the stockholders and not by a consent in writing, and further provide that only our Board of Directors (our “Board”), the chairman of our Board, our chief executive officer or president may call a special meeting of the stockholders. In addition, our amended and restated certificate of incorporation allows our Board, without further action by our stockholders, to issue up to 5,000,000 shares of preferred stock in one or more series and to fix the rights, preferences, privileges and restrictions thereof. These provisions may also frustrate or prevent any attempts by our stockholders to replace or remove our current management by making it more difficult for stockholders to replace members of our Board, who are responsible for appointing the members of our management team. Furthermore, because we are incorporated in Delaware, we are governed by the provisions of Section 203 of the Delaware General Corporation Law (“DGCL”) which prohibits, with some exceptions, stockholders owning in excess of 15% of our outstanding voting stock from merging or combining with us. Finally, our charter documents establish advanced notice requirements for nominations for election to our Board and for proposing matters that can be acted upon at stockholder meetings. Although we believe these provisions together provide for an opportunity to receive higher bids by requiring potential acquirers to negotiate with our Board, they would apply even if an offer to acquire our company may be considered beneficial by some stockholders.
Our bylaws designate a state or federal court located within the State of Delaware as the sole and exclusive forum for substantially all disputes between us and our stockholders, which could limit our stockholders' ability to obtain a favorable judicial forum for disputes with us our current or former directors, officers, stockholders, or other employees.
Our bylaws provide that, unless we consent in writing to the selection of an alternative forum, the Court of Chancery of the State of Delaware shall be the sole and exclusive forum for (i) any derivative action or proceeding brought on behalf of us under Delaware law, (ii) any action asserting a claim of breach of a fiduciary duty owed by any current or former director, officer, or other employee of the Company to us or our stockholders, (iii) any action asserting a claim against us or any of our directors, officers, or other employees arising pursuant to any provision of the DGCL or our certificate of incorporation or bylaws (as either may be amended from time to time), (iv) any action asserting a claim against us governed by the internal affairs doctrine, or (v) any other action asserting an “internal corporate claim,” as defined under Section 115 of the DGCL. The forgoing provisions do not apply to any claims arising under the Securities Act and, unless we consent in writing to the selection of an alternative forum, the federal district courts of the United States will be the sole and exclusive forum for resolving any action asserting a claim arising under the Securities Act.
These choice of forum provisions may limit a stockholder’s ability to bring a claim in a judicial forum that it finds favorable for disputes with us or any of our current or former directors, officers, or other employees, which may discourage lawsuits with respect to such claims. There is uncertainty as to whether a court would enforce such provisions, and the enforceability of similar choice of forum provisions in other companies’ charter documents has been challenged in legal proceedings. It is possible that a court could find these types of provisions to be inapplicable or unenforceable, and if a court were to find the choice of forum provision to be inapplicable or unenforceable in an action, we may incur additional costs associated with resolving such action in other jurisdictions, which could harm our business, results of operations or financial condition.
Our quarterly or annual operating results may fluctuate in the future. As a result, we may fail to meet or exceed the expectations of research analysts or investors, which could cause our stock price to decline.
Our financial condition and operating results have varied significantly in the past and may continue to fluctuate from quarter to quarter and year to year in the future due to a variety of factors, many of which are beyond our control. Factors relating to our business that may contribute to these fluctuations include the following factors, as well as other factors described elsewhere in this report:
our ability to achieve or maintain profitability;
our dependence on a limited number of customers;
some of our product supply agreements with customers have finite duration, may not be extended or renewed and generally do not require the customer to purchase any particular quantity or quantities of our products;
49


the timing of customer orders and our related revenue recognition may vary significantly from quarter to quarter;
with respect to customers purchasing our products for the manufacture of active pharmaceutical ingredients for which they have exclusivity due to patent protection, the termination or expiration of such patent protection and any resulting generic competition may materially and adversely affect our revenues, financial condition or results of operations;
our dependence on a limited number of products in our performance enzymes business;
our reliance on a limited number of contract manufacturers for large scale production of substantially all of our enzyme products;
our relationships with, and dependence on, collaborators in our principal markets;
our ability to successfully and timely develop and commercialize new products, including our ECO Synthesis manufacturing platform, for the markets we serve;
the potential of GSK, Merck, Novartis or any other performance enzyme customer terminating their agreements with us;
the success of our customers’ products in the market and the ability of such customers to obtain regulatory approvals for products and processes;
our ability to deploy our technology platform in life science tools markets;
our dependence on our collaborators or customers’ product candidates which could unexpectedly fail at any stage of preclinical or clinical development;
our dependence on our collaborators or customers’ product candidates which may lack the ability to work as intended or cause undesirable side effects;
our ability to successfully prosecute and protect our intellectual property;
our ability to compete if we do not adequately protect our proprietary technologies or if we lose some of our intellectual property rights;
our ability to avoid infringing the intellectual property rights of third parties;
our involvement in lawsuits to protect or enforce our patents or other intellectual property rights;
our ability to enforce our intellectual property rights throughout the world;
our dependence on, and the need to attract and retain, key management and other personnel;
our ability to prevent the theft or misappropriation of our biocatalysts, the genes that code for our biocatalysts, know-how or technologies;
our ability to protect our trade secrets and other proprietary information from disclosure by employees and others;
our ability to obtain substantial additional capital that may be necessary to expand our business;
our ability to comply with the terms of our Loan Agreement;
our ability to timely pay debt service obligations;
our customers’ ability to pay amounts owed to us in a timely manner;
our ability to avoid charges to earnings as a result of any impairment of goodwill, intangible assets or other long-lived assets;
changes in financial accounting standards or practices may cause adverse, unexpected financial reporting fluctuations and affect our reported results of operations;
our ability to maintain effective internal control over financial reporting;
our dependency on information technology systems, infrastructure and data;
50


our ability to control and to improve product gross margins;
our ability to protect against risks associated with the international aspects of our business;
the cost of compliance with EU chemical regulations;
potential advantages that our competitors and potential competitors may have in securing funding or developing products;
our ability to accurately report our financial results in a timely manner;
results of regulatory tax examinations;
market and economic conditions may negatively impact our business, financial condition, and share price;
business interruptions due to natural disasters, disease outbreaks or other events beyond our control;
public concerns about the ethical, legal and social ramifications of genetically engineered products and processes;
our ability to integrate our current business with any businesses that we may acquire in the future;
our ability to properly handle and dispose of hazardous materials in our business;
potential product liability claims;
changes to tax law and related regulations could materially affect our tax obligations and effective tax rate; and
our ability to use our NOLs to offset future taxable income.
Due to the various factors mentioned above, and others, the results of any prior quarterly or annual periods should not be relied upon as indications of our future operating performance.
We do not intend to pay cash dividends for the foreseeable future.
We currently intend to retain our future earnings, if any, to finance the further development and expansion of our business and do not intend to pay cash dividends in the foreseeable future. Any future determination to pay dividends will be at the discretion of our Board and will depend on our financial condition, results of operations, capital requirements, restrictions contained in future agreements and financing instruments, business prospects and such other factors as our Board deems relevant.
General Risk Factors
If securities or industry analysts do not publish research or reports about our business, or publish negative reports about our business, our stock price and trading volume could decline.
The trading market for our common stock will be influenced by the research and reports that securities or industry analysts publish about us or our business. We do not have any control over these analysts. If one or more of the analysts who cover us downgrade our stock or change their opinion of our stock in a negative manner, our stock price would likely decline. If one or more of these analysts cease coverage of our company or fail to regularly publish reports on us, we could lose visibility in the financial markets, which could cause our stock price or trading volume to decline.
We face risks associated with our international business.
While we have a limited number of employees located outside of the United States, we are and will continue to be dependent upon contract manufacturers located outside of the United States. In addition, we have customers and partners located outside of the United States. Conducting business internationally exposes us to a variety of risks, including:
changes in or interpretations of U.S. or foreign laws or regulations that may adversely affect our ability to sell our products, repatriate profits to the United States or operate our foreign-located facilities;
the imposition or increase of tariffs and other trade barriers, including as a result of the U.S. presidential administration;
the imposition of limitations on, or increase of, withholding and other taxes on remittances and other payments by foreign subsidiaries or joint ventures;
51


the imposition of limitations on genetically-engineered or other products or processes and the production or sale of those products or processes in foreign countries;
currency exchange rate fluctuations;
uncertainties relating to foreign laws, regulations and legal proceedings including pharmaceutical, tax, import/export, anti-corruption and exchange control laws;
the availability of government subsidies or other incentives that benefit competitors in their local markets that are not available to us;
increased demands on our limited resources created by our operations may constrain the capabilities of our administrative and operational resources and restrict our ability to attract, train, manage and retain qualified management, technicians, scientists and other personnel;
economic or political instability in foreign countries;
difficulties associated with staffing and managing foreign operations; and
the need to comply with a variety of United States and foreign laws applicable to the conduct of international business, including import and export control laws and anti-corruption laws.
Market and economic conditions may negatively impact our business, financial condition, and share price.
Concerns about inflation, energy costs, geopolitical issues, the United States mortgage market and a declining real estate market, unstable global credit markets and financial conditions, and volatile oil prices have led to periods of significant economic instability, diminished liquidity and credit availability, declines in consumer confidence and discretionary spending, diminished expectations for the global economy and expectations of slower global economic growth going forward, increased unemployment rates, and increased credit defaults in recent years. Our general business strategy may be adversely affected by any such economic downturns, volatile business environments and continued unstable or unpredictable economic and market conditions.
During 2023, the closures of Silicon Valley Bank and Signature Bank and their placement into receivership with the Federal Deposit Insurance Corporation, and the government-brokered sale of the deposits and majority of assets of First Republic Bank to JPMorgan Chase, created bank-specific and broader financial institution liquidity risk and concerns. Although government intervention ensured that depositors at these banks have access to their funds, future adverse developments with respect to specific financial institutions or the broader financial services industry may lead to market-wide liquidity shortages, impair the ability of companies to access near-term working capital needs, and create additional market and economic uncertainty. There can be no assurance that future credit and financial market instability and a deterioration in confidence in economic conditions will not occur, and we cannot predict the impact or follow-on effects of these insolvencies more broadly or on our business in particular. Further, we cannot guarantee that the government will intervene to provide depositors with access to funds if similar events occur in the future. If other banks and financial institutions enter receivership or become insolvent in the future, our ability to access our existing cash, cash equivalents, and investments may be threatened, which could have a material adverse effect on our business and financial condition.
In addition, if the market and economic conditions described above continue to deteriorate or do not improve, it may make any necessary debt or equity financing more difficult to complete, more costly, and more dilutive. Failure to secure any necessary financing in a timely manner and on favorable terms could have a material adverse effect on our growth strategy, financial performance, and stock price. Additionally, rising rates of inflation have increased the costs associated with conducting our business, including by causing substantial increases in the costs of materials, including raw materials and consumables, equipment, services, and labor. Moreover, given the unpredictable nature of the current economic climate, including future changes in rates of inflation and the potential for high tariffs or other trade barriers, it may be increasingly difficult for us to predict and control our future expenses, which may harm our ability to conduct our business.
International trade policies, including tariffs, sanctions and trade barriers, may adversely affect our business.
We operate in a global economy, which includes utilizing third-party suppliers in several countries outside the U.S. There is inherent risk that global trade restrictions or changes in trade policies and export regulations could adversely affect our business and operations. The current international trade and regulatory environment is subject to significant ongoing uncertainty. The U.S. government has recently announced substantial new tariffs affecting a wide range of products and jurisdictions and has indicated an intention to continue developing new trade policies. In response, certain foreign governments have announced or implemented retaliatory tariffs and other protectionist measures.
52


Significant changes or developments in U.S. and international laws and policies, such as laws and policies surrounding international trade, foreign affairs, manufacturing and development and investment in countries where we, our suppliers or our customers operate, could increase our costs, increase our customers’ costs and adversely impact our customers’ business and financial condition, make our technology, products and services less competitive in the U.S. and other markets affected by such actions, and materially adversely affect our business and financial condition.
Current or future tariffs will also result in increased research and development expenses, including with respect to increased costs associated with raw materials, laboratory equipment and research materials and components, for our customers, or collaborators and us. In addition, such tariffs may increase our supply chain complexity and could also potentially disrupt our existing supply chain. Increased development costs and extended development timelines could impact our customers’ ability to fund additional research and development or place us at a competitive disadvantage compared to companies operating in regions with more favorable trade relationships, which could reduce customer or investor confidence and adversely affect our competitive position, business, financial condition, results of operations or prospects.
While we continue to monitor these developments, the full impact of these risks remains uncertain and any economic downturn, escalation in trade tensions, or deterioration in international perception of U.S.-based companies could materially and adversely affect our business, results of operations, financial condition and prospects. In addition, trade developments have and may continue to heighten the risks related to the other risk factors described elsewhere in this Quarterly Report on Form 10-Q.
Business interruptions resulting from disasters or other disturbances could delay us in the process of developing our products and could disrupt our sales. Our business continuity and disaster recovery plans may not adequately protect us from a serious disaster or other disturbance.
Our headquarters and other facilities are located in the San Francisco Bay Area, which in the past has experienced both severe earthquakes and wildfires. Earthquakes, wildfires or other natural disasters could severely disrupt our operations, and have a material adverse effect on our business, results of operations, financial condition and prospects. We are also vulnerable to other types of disasters and other events that could disrupt our operations, such as riot, civil disturbances, war, terrorist acts, public health emergencies, domestic or foreign conflicts, infections in our laboratory or production facilities or those of our customers or contract manufacturers and other events beyond our control. If a natural disaster or other event occurred that prevented us from using all or a significant portion of our headquarters, that damaged critical infrastructure, such as our enterprise financial systems or manufacturing resource planning and enterprise quality systems, or that otherwise disrupted operations, including due to impacts on our collaborators, suppliers or other third parties on which we rely, it may be difficult or, in certain cases, impossible, for us to continue our business for a substantial period of time. The disaster recovery and business continuity plans we have in place currently are limited and are unlikely to prove adequate in the event of a serious disaster or similar event, and we may incur substantial expenses as a result of the limited nature of such plans. We do not carry insurance for earthquakes and we may not carry sufficient business interruption insurance to compensate us for losses that may occur. Any losses or damages we incur could have a material adverse effect on our cash flows and success as an overall business.
53


We are dependent on information technology systems, infrastructure and data, and any failure of these systems could harm our business. Security breaches, loss of data and other disruptions, whether related to artificial intelligence or other means, could compromise sensitive information related to our business or individuals, or prevent us from accessing critical information and expose us to liability, which could adversely affect our business, results of operations and financial condition.
Information technology helps us operate efficiently, interface with customers, maintain financial accuracy and efficiency and accurately produce our financial statements. If we do not allocate and effectively manage the resources necessary to build and sustain the proper technology infrastructure, we could be subject to transaction errors, processing inefficiencies, the loss of customers, business disruptions or the loss of or damage to intellectual property or data through security breach. If our information technology systems do not effectively collect, store, process and report relevant data for the operation of our business, whether due to equipment malfunction or constraints, software deficiencies, or human error, our ability to effectively plan, forecast and execute our business plan and comply with applicable laws and regulations will be impaired, perhaps materially. Our information technology systems and those of our external vendors, strategic partners and other contractors or consultants are vulnerable to attack and damage or interruption from computer viruses and malware (e.g. ransomware), malicious code, natural disasters, terrorism, war, telecommunication and electrical failures, hacking, cyberattacks, phishing attacks and other social engineering schemes, employee theft or misuse, human error, fraud, denial or degradation of service attacks, sophisticated nation-state and nation-state-supported actors or unauthorized access or use by persons inside our organization, or persons with access to systems inside our organization. The prevalence of artificial intelligences (“AI”) tools in the global marketplace and rapid changes thereto raise the risk to our systems by making more sophisticated tools available to bad actors, and by making our data more vulnerable to inadvertent leaks or corruption by employees and others. Any such issues could materially and adversely affect our financial condition, results of operations, cash flows and the timeliness with which we report our internal and external operating results. The accessibility of AI intensifies these risks.
Our business may require us to use and store personal information of our customers, employees, and business partners. This may include names, addresses, phone numbers, email addresses, contact preferences, tax identification numbers and payment account information. We require usernames and passwords in order to access our information technology systems. We also use encryption and authentication technologies to secure the transmission and storage of data. However, these security measures may be compromised as a result of security breaches by unauthorized persons, employee error, malfeasance, faulty password management or other irregularity, and result in persons obtaining unauthorized access to our data or accounts. Third parties may attempt to fraudulently induce employees or customers into disclosing usernames, passwords or other sensitive information, which may in turn be used to access our information technology systems. For example, our employees have received “phishing” emails and phone calls attempting to induce them to divulge passwords and other sensitive information. The accessibility of AI intensifies these risks.
In addition, unauthorized persons may attempt to hack into our products or systems to obtain personal data relating to employees and other individuals, our confidential or proprietary information or confidential information we hold on behalf of third parties. We also rely on external vendors to supply and/or support certain aspects of our information technology systems. The systems of these external vendors may contain defects in design or manufacture or other problems that could unexpectedly compromise information security of our own systems, and we are dependent on these third parties to deploy appropriate security programs to protect their systems. If we or our third-party vendors were to experience a significant cybersecurity breach of our or their information systems or data, the costs associated with the investigation, remediation and potential notification of the breach to counterparties and data subjects could be material. Our remediation efforts may not be successful. Further, if such an event were to occur and cause interruptions in our operations, it could result in a material disruption of our development programs and our business operations, whether due to a loss, corruption or unauthorized disclosure of our trade secrets, personal information or other proprietary or sensitive information or other similar disruptions. Attacks upon information technology systems are also increasing in their frequency, levels of persistence, sophistication and intensity, and are being conducted by sophisticated and organized groups and individuals with a wide range of motives and expertise. As a result of the remote work policies we initiated in response to the COVID-19 pandemic, and our continued hybrid working environment, we may also face increased cybersecurity risks due to our reliance on internet technology and the number of our employees who are working remotely, which may create additional opportunities for cybercriminals to exploit vulnerabilities. The accessibility of AI intensifies these risks. We have programs in place to detect, contain and respond to data security incidents, and we make ongoing improvements to our information-sharing products in order to minimize vulnerabilities, in accordance with industry and regulatory standards. However, because the techniques used to obtain unauthorized access to or sabotage systems change frequently and may be difficult to detect, we may not be able to anticipate and prevent these intrusions or mitigate them when and if they occur. Even if identified, we may be unable to adequately and timely investigate or remediate incidents or breaches due to attackers increasingly using tools and techniques that are designed to circumvent controls, to avoid detection and to remove or obfuscate forensic evidence.
54


We and certain of our external vendors are from time to time subject to cyberattacks and security incidents. While we do not believe that we have experienced any significant system failure, accident, or security breach to date, if such an event were to occur, it could result in the unauthorized access to or unauthorized use, disclosure, release or other processing of personal information, it may be necessary to notify individuals, governmental authorities, supervisory bodies, the media and other parties pursuant to privacy and security laws. Any security compromise affecting us, our service providers, vendors, strategic partners, other contractors, consultants or our industry, whether real or perceived, could harm our reputation, erode confidence in the effectiveness of our security measures and lead to regulatory scrutiny. To the extent that any disruption or security breach were to result in a loss of, or damage to, our data or systems, or inappropriate disclosure of confidential or proprietary or personal information, we could incur liability, including litigation exposure, penalties and fines, which may not be covered by insurance or may be in excess of our insurance coverage. Additionally, we could become the subject of regulatory action or investigation, litigation, including class actions, or other claims and our competitive position could be harmed and the further development of our products could be delayed. If such an event were to occur and cause interruptions in our operations, it could result in a material disruption of our business and could materially and adversely affect our business, results of operations and financial condition.
Actual or perceived failures to comply with applicable data protection, privacy and security laws, regulations, standards and other requirements could adversely affect our business, results of operations and financial condition.
The global data protection landscape is rapidly evolving, and we are or may become subject to state, federal and foreign laws, regulations, decisions and directives governing the privacy, security, collection, storage, transmission, use, processing, retention and disclosure of personal information. Any failure or perceived failure by us to comply with applicable laws or regulations, our internal policies and procedures or our contracts governing our processing of personal information could result in negative publicity, government investigations and enforcement actions, claims by third parties and damage to our reputation, any of which could have a material adverse effect on our operations, financial performance and business.
In the United States, Health Insurance Portability and Accountability Act (“HIPAA”) imposes, among other things, certain standards relating to the privacy, security, transmission and breach reporting of certain individually identifiable health information. Certain states have also adopted and continue to adopt new privacy and security laws and regulations, which govern the privacy, processing and protection of health-related and other personal information. Such laws and regulations will be subject to interpretation by various courts and other governmental authorities, thus creating potentially complex compliance issues for us and our future customers and strategic partners. For example, the California Consumer Privacy Act (“CCPA”) went into effect on January 1, 2020. The CCPA creates individual privacy rights for California consumers and increases the privacy and security obligations of entities handling certain personal information. The CCPA also provides for civil penalties for violations, as well as a private right of action for data breaches (which has increased the likelihood of, and risks associated with, data breach litigation). Further, the California Privacy Rights Act (“CPRA”) significantly amended the CCPA, which went into effect in January 2023. It imposes additional data privacy obligations on covered businesses, including additional consumer rights processes, limitations on data uses, new audit requirements for higher risk data and opt outs for certain uses of sensitive data. It also created a new California privacy protection agency authorized to issue substantive regulations and could result in increased privacy and information security enforcement. Additional compliance investment and potential business process changes may also be required as these laws continue to evolve. Similar laws regulating personal information generally or health information in particular have passed in more than a dozen states and have been proposed in other states and at the federal level, reflecting a trend toward more stringent privacy legislation in the United States. The same is true for emerging laws and regulations related to AI. These developments increase our compliance burden and our risk, including risks of regulatory fines, litigation and associated reputational harm. Any liability from failure to comply with the requirements of these laws could adversely affect our financial condition.
Furthermore, the Federal Trade Commission (“FTC”) and many state Attorneys General continue to enforce federal and state consumer protection laws against companies for the collection, use, sharing and security of personal information that appear to be unfair or deceptive. For example, according to the FTC, failing to take appropriate steps to keep consumers’ personal information secure can constitute unfair acts or practices in or affecting commerce in violation of Section 5(a) of the Federal Trade Commission Act. The FTC expects a company’s data security measures to be reasonable and appropriate in light of the sensitivity and volume of consumer information it holds, the size and complexity of its business, and the cost of available tools to improve security and reduce vulnerabilities.
55


In the EU, the EU General Data Protection Regulation (“EU GDPR”) governs the processing of personal data. The United Kingdom (“UK”) has implemented the EU GDPR as the UK GDPR which sits alongside the UK Data Protection Act 2018 (the “UK GDPR”, and together with the EU GDPR, the “GDPR”). The GDPR imposes requirements for controllers, including (among others) specific requirements for obtaining valid consent where consent is the legal basis for processing, requirements around accountability and transparency, the obligation to consider data protection when any new products or services are developed, the obligation to comply with individuals’ data protection rights, and the obligation to notify relevant data supervisory authorities of notifiable personal data breaches without undue delay (and no later than 72 hours) after becoming aware of the personal data breach (and affected data subjects where the personal data breach is likely to result in a high risk to their rights and freedoms). The EU GDPR provides that EU member states may enact their own additional national laws and regulations regarding the processing of genetic, biometric or health data, which could affect our ability to use and share personal data or could cause our costs to increase and potentially harm our business and financial condition. Failure to comply with the requirements of the GDPR can result in (among other things) fines of up to the greater of €20 million (under the EU GDPR) or £17.5 million (under the UK GDPR) or 4% of an organization’s total worldwide annual turnover of the preceding financial year and other administrative penalties. To the extent that we are subject to the GDPR, compliance with the GDPR may require substantial amendments to our procedures and policies and these changes could adversely impact our business by increasing operational and compliance costs or impact business practices. Further, there is a risk that the amended policies and procedures will not be implemented correctly or that individuals within the business will not be fully compliant with the new procedures. There is a risk that we could be impacted by a cybersecurity incident that results in loss or unauthorized disclosure of personal data, potentially resulting in us facing harms similar to those described above.
Among other requirements, the EU GDPR prohibits the international transfer of personal data subject to the EU GDPR from the European Economic Area (“EEA”) to third countries that the European Commission does not recognize as having an ‘adequate’ level of data protection, unless a data transfer mechanism (such as, EU Standard Contractual Clauses or “EU SCCs”) has been put in place or a derogation under the EU GDPR can be relied on. In certain cases, companies must also carry out a transfer privacy impact assessment (“TIA”) which, among other things, assesses laws governing access to personal data in the recipient country and considers whether supplementary measures that provide privacy protections additional to those provided under the EU SCCs will need to be implemented to ensure an ‘essentially equivalent’ level of data protection to that afforded in the EEA. In July 2023, the European Commission adopted its Final Implementing Decision granting the United States adequacy (“Adequacy Decision”) for EU-U.S. transfers of personal data for entities self-certified to the Atlantic Data Privacy Framework (“DPF”). Entities relying on EU SCCs for transfers to the United States are also able to rely on the analysis in the Adequacy Decisions as support for their TIA regarding the equivalence of U.S. national security safeguards and redress.
The UK GDPR also imposes similar restrictions on transfers of personal data from the UK to jurisdictions that the UK Government does not consider adequate, including the United States. The UK Government has published its own form of the EU SCCs, known as the International Data Transfer Agreement and an International Data Transfer Addendum to the EU SCCs. The UK Information Commissioner’s Office has also published its own version of the TIA, although entities may choose to adopt either the EU or UK-style TIA. Further, on September 21, 2023, the UK Secretary of State for Science, Innovation and Technology established a UK-U.S. data bridge (i.e., a UK equivalent of the Adequacy Decision) and adopted UK regulations to implement the UK-U.S. data. Personal data may now be transferred from the UK under the UK-U.S. data bridge through the UK extension to the DPF to organizations self-certified under the UK extension to the DPF.
As we continue to expand into other foreign countries and jurisdictions, we may be subject to additional laws and regulations that may affect how we conduct business.
Although we work to comply with applicable laws, regulations and standards, our contractual obligations and other legal obligations, these requirements are evolving and may be modified, interpreted and applied in an inconsistent manner from one jurisdiction to another, and may conflict with one another or other legal obligations with which we must comply. Various federal, state and foreign legislative or regulatory bodies may enact new or additional laws and regulations concerning privacy, data-retention and data-protection issues, including laws or regulations mandating disclosure to domestic or international law enforcement bodies, which could adversely impact our business or our reputation with customers. For example, some countries have adopted laws mandating that certain personal information regarding customers in their country be maintained solely in their country. Having to maintain local data centers and redesign product, service and business operations to limit processing of personal information to within individual countries could increase our operating costs significantly. Any failure, or perceived failure, by us to comply with federal, state or international privacy, data-retention or data-protection-related laws, regulations, orders or industry self-regulatory principles could result in proceedings or actions against us by governmental entities or others, a loss of customer confidence, damage to our brand and reputation and a loss of customers, any of which could have an adverse effect on our business.
56


Evolving expectations around corporate responsibility practices, specifically related to environmental, social and governance (“ESG”) matters, may expose us to reputational and other risks.
Investors, stockholders, customers, suppliers and other third parties are increasingly focusing on ESG and corporate social responsibility endeavors and reporting. Companies that do not adapt to or comply with the evolving investor or stakeholder expectations and standards, or that are perceived to have not responded appropriately, may suffer from reputational damage, which could result in the business, financial condition and/or stock price of a company being materially and adversely affected. For example, certain customers have inquired about our ESG practices and may impose ESG guidelines, procurement policies, sustainability standards, mandates or reporting requirements for, and may scrutinize relationships more closely with, their suppliers, including us, which may lengthen sales cycles, increase our costs or impair our ability to attract and retain customers. Further, this increased focus on ESG issues may result in new regulations, international accords and/or third-party requirements that could adversely impact our business, or lead to certain stockholders reducing or eliminating their holdings of our stock. For example, California has passed new laws regarding environmental disclosures that may directly impact us in the future. If we are held to be out of compliance with such laws or other similar laws, we could face penalties and/or reputational harm. We may also be subject to new rules and laws that reflect competing trends in the ESG space, leading to difficulties in compliance. At the same time, certain governmental representatives and other stakeholders have increasingly expressed or pursued opposing views, legislation and investment expectations around sustainability initiatives, including the enactment or proposal of “anti-ESG” legislation or policies. An allegation or perception that we have not taken sufficient action or have taken the wrong actions in these areas could negatively harm our business and reputation.

ITEM 2.UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS
None.
ITEM 3.
DEFAULTS UPON SENIOR SECURITIES
None.
ITEM 4.MINE SAFETY DISCLOSURES
Not applicable.
ITEM 5.OTHER INFORMATION
Rule 10b5-1 Trading Arrangements
On March 11, 2025, Kevin Norrett, our Chief Operating Officer, adopted a trading plan intended to satisfy the affirmative defense conditions of Rule 10b5-1(c). The plan provides for the sale of up to 66,602 shares of the Company’s common stock and will terminate on January 30, 2026, subject to early termination for certain specified events set forth in the plan.
During the three months ended March 31, 2025, except as set forth above, none of the directors or executive officers of the Company adopted or terminated any contracts, instructions, or written plans for the purchase or sale of our securities that were intended to meet the affirmative defense conditions of Rule 10b5-1(c) or any other non-Rule 10b5-1 trading arrangement.

57


ITEM 6.EXHIBITS
3.1
3.2
3.3
3.4
4.1Reference is made to Exhibits 3.1 through 3.4.
4.2
4.3
4.4
10.1
31.1
31.2
32.1
101 
The following materials from the Company's Quarterly Report on Form 10-Q for the quarter ended March 31, 2025, formatted in Inline Extensible Business Reporting Language (iXBRL) includes: (i) Unaudited Condensed Consolidated Balance Sheets at March 31, 2025 and December 31, 2024 (ii) Unaudited Condensed Consolidated Statements of Operations for the Three Months Ended March 31, 2025 and 2024, (iii) Unaudited Condensed Consolidated Statements of Comprehensive Loss for the Three Months Ended March 31, 2025 and 2024, (iv) Unaudited Condensed Consolidated Statements of Stockholders' Equity for the three months ended March 31, 2025 and 2024, (v) Unaudited Condensed Consolidated Statements of Cash Flows for the Three Months Ended March 31, 2025 and 2024 and (v) Notes to Unaudited Condensed Consolidated Financial Statements.
101.SCHInline XBRL Taxonomy Extension Schema Document
101.CALInline XBRL Taxonomy Extension Calculation Linkbase Document
101.DEFInline XBRL Taxonomy Extension Definition Linkbase Document
101.LABInline XBRL Taxonomy Extension Label Linkbase Document
101.PREInline XBRL Taxonomy Extension Presentation Linkbase Document
104
The cover page from the Company’s Quarterly Report on Form 10-Q for the quarter ended March 31, 2025, formatted in Inline XBRL and contained in Exhibit 101.
58


SIGNATURES
Pursuant to the requirements of the Securities Exchange Act of 1934, the Registrant has duly caused this report to be signed on its behalf by the undersigned, thereunto duly authorized.
Codexis, Inc.
Date:May 14, 2025By:/s/ Stephen Dilly
Stephen Dilly
Chairman of the Board of Directors, President and Chief Executive Officer
(principal executive officer)
Date:May 14, 2025By:/s/ Georgia Erbez
Georgia Erbez
Chief Financial Officer
(principal financial and accounting officer)

59
EX-10.1 2 codexis-ex101amendment1ton.htm EX-10.1 Document
CONFIDENTIAL
AMENDMENT NO. 1 TO AQUISITION AGREEMENT
This amendment (“Amendment”) is entered into as of February 28, 2025 (the “Amendment Effective Date”) by and between Codexis, Inc., with offices at 200 Penobscot Dr., Redwood City, CA 94063 (“Seller” or “Codexis”) and Société des Produits Nestlé S.A., with offices at 55 Avenue Nestlé, 1800 Vevey, Switzerland (“Buyer” or “NHSc”).

WHEREAS, Seller and Buyer are parties to a certain Acquisition Agreement, dated as of December 26, 2023 (the “Lipase Agreement”), regarding the purchase of certain assets related to the Lipase Project Enzyme; and
WHEREAS, Under the Lipase Agreement, Seller granted Buyer an option to acquire certain assets related to the A&P Enzymes and the right to Develop and Commercialize the A&P Enzymes upon the payment of an agreed upon purchase price; and
WHEREAS, the parties desire to modify the Lipase Agreement to extend the Option Period. NOW, THEREFORE, in consideration of the premises and mutual covenants contained in this
Amendment, the parties agree as follows:

1.Definitions. Unless otherwise specified herein, the capitalized terms used in this Amendment shall have the meanings assigned to such terms in the Lipase Agreement.
2.Amendment. Buyer and Seller agree that the Lipase Agreement shall be amended in the following manner: The definition of “Option Period” in Exhibit A to the Lipase Agreement is deleted and replaced in its entirety with the following: “Option Period” means the period starting on the Closing Date and ending on the earlier of: (a) May 16, 2025; or (b) termination of this Agreement.”

3.Ratification; Conflict. Except as otherwise expressly set forth in this Amendment, all of the terms and conditions of the Lipase Agreement shall remain in full force and effect. In the event of any conflict between the terms of this Amendment and the terms of the Lipase Agreement, the terms of this Amendment shall control.

4.Counterparts. This Amendment may be signed in one (1) or more counterparts, each of which will be deemed an original but all of which together will constitute one and the same instrument.

5.Governing Law. This Amendment (and any claims or disputes arising out of or relating hereto or to the transaction contemplated hereby or to the inducement of any party to enter herein or therein, whether for breach of contract, tortious conduct, or otherwise and whether predicated on common law, statute, or otherwise) shall be governed by, enforced, and shall be construed in accordance with the laws of the State of New York, without regard to its conflicts of law provisions. The parties hereby disclaim the application of the United Nations Convention on the International Sale of Goods to this Amendment.








[signature page follows]



CONFIDENTIAL


IN WITNESS WHEREOF, a duly authorized representative of each party has executed this Amendment as of the dates identified below, but the Amendment shall become effective on the Amendment Effective Date.

CODEXIS, INC.    SOCIÉTÉ DES PRODUITS NESTLÉ S.A.

By: /s/ Kevin Norrett        By: /s/ Claudio Kuoni    
Name: Kevin Norrett
Title: Chief Operating Officer


By:    /s/ Georgia Erbez     Name: Georgia Erbez
Title: Chief Financial Officer

Name: Claudio Kuoni
Title: General Counsel Nestlé Health Science

EX-31.1 3 cdxs_20250331xex311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, Stephen Dilly, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of Codexis, 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.
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: May 14, 2025
/s/ Stephen Dilly
Stephen Dilly
Chairman of the Board of Directors, President and Chief Executive Officer
(principal executive officer)


EX-31.2 4 cdxs_20250331xex312.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Georgia Erbez, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of Codexis, 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.
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: May 14, 2025
/s/ Georgia Erbez
Georgia Erbez
Chief Financial Officer
(principal financial and accounting officer)


EX-32.1 5 cdxs_20250331xex321.htm EX-32.1 Document

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 Codexis, Inc. (the “Company”) on Form 10-Q for the fiscal quarter ended March 31, 2025, as filed with the Securities and Exchange Commission (the “Report”), Stephen Dilly, Chairman of the Board of Directors, President, and Chief Executive Officer of the Company and Georgia Erbez, Chief Financial Officer of the Company, respectively, do each hereby certify, pursuant to 18 U.S.C. Section 1350, as adopted pursuant to Section 906 of the Sarbanes-Oxley Act of 2002, that:
The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
The information in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.


Date: May 14, 2025
/s/ Stephen Dilly
Stephen Dilly
Chairman of the Board of Directors, President and Chief Executive Officer
(principal executive officer)
/s/ Georgia Erbez
Georgia Erbez
Chief Financial Officer
(principal financial and accounting officer)


EX-101.SCH 6 cdxs-20250331.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 9952151 - Statement - Condensed Consolidated Balance Sheets (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952152 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 9952153 - Statement - Condensed Consolidated Statements of Operations (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952154 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952155 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952156 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952157 - Statement - Condensed Consolidated Statements of Cash Flows (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 9952158 - Disclosure - Description of Business link:presentationLink link:calculationLink link:definitionLink 9952159 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 9952160 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 9952161 - Disclosure - Net Loss per Share link:presentationLink link:calculationLink link:definitionLink 9952162 - Disclosure - Investments in Non-Marketable Securities link:presentationLink link:calculationLink link:definitionLink 9952163 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 9952164 - Disclosure - Balance Sheet Details link:presentationLink link:calculationLink link:definitionLink 9952165 - Disclosure - Stock-based Compensation link:presentationLink link:calculationLink link:definitionLink 9952166 - Disclosure - Capital Stock link:presentationLink link:calculationLink link:definitionLink 9952167 - Disclosure - Commitments and Contingencies link:presentationLink link:calculationLink link:definitionLink 9952168 - Disclosure - Debt link:presentationLink link:calculationLink link:definitionLink 9952169 - Disclosure - Segment, Geographical and Other Revenue Information link:presentationLink link:calculationLink link:definitionLink 9955511 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9955512 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 9955513 - Disclosure - Net Loss per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9955514 - Disclosure - Investments in Non-Marketable Securities (Tables) link:presentationLink link:calculationLink link:definitionLink 9955515 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 9955516 - Disclosure - Balance Sheet Details (Tables) link:presentationLink link:calculationLink link:definitionLink 9955517 - Disclosure - Stock-based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9955518 - Disclosure - Commitments and Contingencies (Tables) link:presentationLink link:calculationLink link:definitionLink 9955519 - Disclosure - Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 9955520 - Disclosure - Segment, Geographical and Other Revenue Information (Tables) link:presentationLink link:calculationLink link:definitionLink 9955521 - Disclosure - Description of Business (Details) link:presentationLink link:calculationLink link:definitionLink 9955522 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 9955523 - Disclosure - Revenue Recognition - Contracts with Customer (Details) link:presentationLink link:calculationLink link:definitionLink 9955524 - Disclosure - Revenue Recognition - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955525 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details) link:presentationLink link:calculationLink link:definitionLink 9955526 - Disclosure - Revenue Recognition - Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9955526 - Disclosure - Revenue Recognition - Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9955527 - Disclosure - Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details) link:presentationLink link:calculationLink link:definitionLink 9955528 - Disclosure - Investments in Non-Marketable Securities - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955529 - Disclosure - Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details) link:presentationLink link:calculationLink link:definitionLink 9955530 - Disclosure - Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 9955531 - Disclosure - Fair Value Measurements - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955532 - Disclosure - Balance Sheet Details - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 9955533 - Disclosure - Balance Sheet Details - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955534 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details) link:presentationLink link:calculationLink link:definitionLink 9955535 - Disclosure - Balance Sheet Details - Other Accrued Liabilities (Details) link:presentationLink link:calculationLink link:definitionLink 9955536 - Disclosure - Stock-based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955537 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details) link:presentationLink link:calculationLink link:definitionLink 9955538 - Disclosure - Capital Stock (Details) link:presentationLink link:calculationLink link:definitionLink 9955539 - Disclosure - Commitments and Contingencies - Lease Cost (Details) link:presentationLink link:calculationLink link:definitionLink 9955540 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) link:presentationLink link:calculationLink link:definitionLink 9955541 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9955542 - Disclosure - Commitments and Contingencies - Maturity Analysis of Operating Lease (Details) link:presentationLink link:calculationLink link:definitionLink 9955542 - Disclosure - Commitments and Contingencies - Maturity Analysis of Operating Lease (Details) link:presentationLink link:calculationLink link:definitionLink 9955543 - Disclosure - Commitments and Contingencies - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955544 - Disclosure - Debt - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955545 - Disclosure - Debt - Schedule of Long-Term Debt Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9955546 - Disclosure - Debt - Schedule of Maturities of Long-Term Debt (Details) link:presentationLink link:calculationLink link:definitionLink 9955547 - Disclosure - Segment, Geographical and Other Revenue Information - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9955548 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details) link:presentationLink link:calculationLink link:definitionLink 9955549 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 cdxs-20250331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 cdxs-20250331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 cdxs-20250331_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT U.S. agency securities US Government Corporations and Agencies Securities [Member] Operating Leases Lessee, Operating Lease, Liability, to be Paid, Fiscal Year Maturity [Abstract] Adjustments to reconcile net loss to net cash used in operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Geographic Areas, Long-Lived Assets [Abstract] Geographic Areas, Long-Lived Assets [Abstract] Statistical Measurement [Domain] Statistical Measurement [Domain] Work in process Inventory, Work in Process, Gross Unrealized Losses Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax Customer E Customer E [Member] Customer E Lease Cost Lease, Cost [Table Text Block] Cover page. Cover [Abstract] Net decrease in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Operating Lease Maturity Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Trading Symbol Trading Symbol Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Schedule of Commitments and Contingencies [Table] Schedule of Commitments and Contingencies [Table] Schedule of commitments and contingencies. All Trading Arrangements All Trading Arrangements [Member] Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Non-NEOs Non-NEOs [Member] Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Income taxes paid Income Taxes Paid, Net Office equipment and furniture Office Equipment and Furniture [Member] Office Equipment and Furniture [Member] Pay vs Performance Disclosure [Line Items] Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Short-term Investments Short-Term Investments [Member] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Costs and operating expenses: Operating Costs and Expenses [Abstract] Total revenues Contract with Customer, Liability, Change in Timeframe, Performance Obligation Satisfied, Revenue Recognized Investment in non-marketable equity securities Investments and Other Noncurrent Assets Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Proceeds from exercises of stock options Proceeds from Stock Options Exercised Award Timing Disclosures [Line Items] Other Performance Measure, Amount Other Performance Measure, Amount Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding RSUs and RSAs RSUs and RSAs [Member] RSUs and RSAs Operating lease, cost Operating Lease, Cost Lease, Cost [Abstract] Lease, Cost [Abstract] Class of Warrant or Right [Axis] Class of Warrant or Right [Axis] Long-term lease obligations - Operating leases Operating Lease, Liability, Noncurrent Segment Information Segment Reporting, Policy [Policy Text Block] Geographic Distribution [Axis] Geographic Distribution [Axis] Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Deferred revenue Contract with Customer, Liability, Current United States UNITED STATES Schedule of Inventory Components Inventory, Net [Abstract] Other non-current assets Other Assets, Noncurrent Entity Tax Identification Number Entity Tax Identification Number Schedule of Long-Term Debt Instruments Schedule of Long-Term Debt Instruments [Table Text Block] Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Money market funds Money Market Funds [Member] Selling, general and administrative Selling, general and administrative Selling, General and Administrative Expenses [Member] Changes in the period: Change in Contract with Customer, Liability [Abstract] Receivable Type [Axis] Receivable Type [Axis] Net cash used in operating activities Net Cash Provided by (Used in) Operating Activities Net proceeds received Sale of Stock, Consideration Received on Transaction Operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] U.S. treasury securities US Treasury Securities [Member] Secured Debt Secured Debt [Member] Prepaid expense, current Prepaid Expense, Current Equity Components [Axis] Equity Components [Axis] Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Other assets, current Other Assets, Current Award Timing Method Award Timing Method [Text Block] Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Fair Value Debt Securities, Available-for-Sale Cantor Cantor [Member] Cantor Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Revenue Revenue, Product and Service Benchmark [Member] Issuance of common stock upon release of stock awards (in shares) Stock Issued During Period, Shares, Other Insider Trading Policies and Procedures [Line Items] Use of Estimates Use of Estimates, Policy [Policy Text Block] Total costs and operating expenses Costs and Expenses Contract assets Contract with Customer, Asset, before Allowance for Credit Loss, Current Receivable [Domain] Receivable [Domain] Adjustment to Compensation, Amount Adjustment to Compensation Amount Compensation Amount Outstanding Recovery Compensation Amount Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member] Entity Small Business Entity Small Business Investment, Variable Interest Rate, Type [Extensible Enumeration] Investment, Variable Interest Rate, Type [Extensible Enumeration] Company Selected Measure Amount Company Selected Measure Amount Geographical [Axis] Geographical [Axis] Payment of debt issuance costs Payments of Debt Issuance Costs Tabular List, Table Tabular List [Table Text Block] Loss contingency accrual Loss Contingency, Accrual, Current Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] EMEA EMEA [Member] Prepayment, aggregate principal amount, percentage Debt Instrument, Exit Fee, Percent Debt Instrument, Exit Fee, Percent Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member] Class of warrant or right, number of securities called by warrants or rights (in shares) Class of Warrant or Right, Number of Securities Called by Warrants or Rights Other accrued liabilities Total other accrued liabilities Accrued Liabilities, Current Total shares excluded as anti-dilutive (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Performance Obligation, Expected Timing of Satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] Innovatus Loan - First Tranche Innovatus Loan - First Tranche [Member] Innovatus Loan - First Tranche Cash, cash equivalents and restricted cash at the beginning of the period Cash, cash equivalents and restricted cash at the end of the period Total cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Share-based payment arrangement, nonvested award, cost not yet recognized, amount Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Current assets: Assets, Current [Abstract] Goodwill Goodwill Research and development revenue Research And Development Revenue [Member] Research And Development Revenue Other comprehensive loss: Other Comprehensive Income (Loss), Net of Tax [Abstract] Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Performance obligations satisfied from new activities in the period - contract revenue Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition Piper Sandler & Co Piper Sandler & Co [Member] Piper Sandler & Co Product and Service [Domain] Product and Service [Domain] Stock options Stock options Share-Based Payment Arrangement, Option [Member] Total depreciation expense Depreciation Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] 2026 Lessee, Operating Lease, Liability, to be Paid, Year One Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table] Antidilutive Security, Excluded EPS Calculation [Table] Comprehensive loss Comprehensive Income (Loss), Net of Tax, Attributable to Parent Preferred stock, shares outstanding (in shares) Preferred Stock, Shares Outstanding Early repayment fee, percentage Early Repayment Fee, Percentage Early Repayment Fee, Percentage Warrants Warrant [Member] Security Exchange Name Security Exchange Name Basis spread on variable rate Debt Instrument, Basis Spread on Variable Rate Award Type [Axis] Award Type [Axis] Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price Class of warrant or right, warrant term Class Of Warrant Or Right, Warrant Term Class Of Warrant Or Right, Warrant Term Corporate debt Corporate Debt Securities [Member] Net proceeds from stock options exercised Net Proceeds from Stock Options Exercised Net Proceeds from Stock Options Exercised Schedule of Long-Lived Assets by Geographical Area Schedule of Disclosure on Geographic Areas, Long-Lived Assets in Individual Foreign Countries by Country [Table Text Block] Weighted average exercise price of stock options exercised (in dollars per share) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Property and equipment, net Property and equipment, net Property, Plant and Equipment, Net Total liabilities Liabilities Long-lived assets Long-Lived Assets Convertible Debt Convertible Debt [Member] Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Research and development Research and Development Expense Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Expiration Date Trading Arrangement Expiration Date Investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Current portion of lease obligations - Operating leases Operating Lease, Liability, Current Total Shareholder Return Amount Total Shareholder Return Amount Common stock, shares, issued (in shares) Common Stock, Shares, Issued Credit losses Debt Securities, Available-for-Sale, Allowance for Credit Loss, Writeoff Entity [Domain] Entity [Domain] Equity Awards Adjustments, Footnote Equity Awards Adjustments, Footnote [Text Block] Concentration risk, percentage Concentration Risk, Percentage Total financial assets Financing Receivable, before Allowance for Credit Loss Computer equipment and software Computer Equipment [Member] seqWell seqWell [Member] seqWell Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Less: accumulated depreciation and amortization Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Cash Cash Property and equipment Property, Plant and Equipment, Gross Issuance of common stock upon exercise of stock options (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Debt Instrument [Line Items] Debt Instrument [Line Items] Less: allowances Financing Receivable, Allowance for Credit Loss, Current Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Research and development Research and development Research and Development Expense [Member] Common stock, shares authorized (in shares) Common Stock, Shares Authorized Investments in Non-Marketable Securities Investments in Debt and Equity Instruments, Cash and Cash Equivalents, Unrealized and Realized Gains (Losses) [Text Block] Basis of Presentation and Principles of Consolidation Basis of Accounting, Policy [Policy Text Block] Debt instrument, number of tranches Debt Instrument, Number Of Tranches Debt Instrument, Number Of Tranches Unrealized loss on available-for-sale short-term investments, net of tax OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax Weighted average common stock shares used in computing net loss per share, diluted (in shares) Weighted Average Number of Shares Outstanding, Diluted MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] Long-Term Debt, Type [Axis] Long-Term Debt, Type [Axis] Total stockholders' equity Beginning balance Ending balance Equity, Attributable to Parent Sale of stock, period Sale Of Stock, Period Sale Of Stock, Period Balance Sheet Location [Axis] Statement of Financial Position Location, Balance [Axis] Concentration Risk Type [Domain] Concentration Risk Type [Domain] Selling, general and administrative Selling, General and Administrative Expense Other comprehensive loss Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Cost of product revenue Cost of Sales [Member] Product revenue Product [Member] Sale of Stock [Domain] Sale of Stock [Domain] Number of shares authorized (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items] Total long-term debt Long-Term Debt Pension Adjustments Prior Service Cost Pension Adjustments Prior Service Cost [Member] Document Fiscal Period Focus Document Fiscal Period Focus 2029 Long-Term Debt, Maturity, Year Four All Executive Categories All Executive Categories [Member] Balance Sheet Location [Domain] Statement of Financial Position Location, Balance [Domain] Accounts receivable Accounts Receivable, before Allowance for Credit Loss, Current Kevin Norrett [Member] Kevin Norrett Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Assets Assets [Abstract] Balance Sheets Details Balance Sheets Details [Text Block] Balance sheets details. Document Type Document Type Debt instrument, interest rate, effective percentage Debt Instrument, Interest Rate, Effective Percentage Commercial paper Commercial Paper [Member] Pension Benefits Adjustments, Footnote Pension Benefits Adjustments, Footnote [Text Block] Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Add: payment in-kind interest Debt Instrument, Payment In-kind Interest Debt Instrument, Payment In-kind Interest Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost Contract with Customer Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Maximum Maximum [Member] Contract liabilities: deferred revenue Contract with Customer, Liability Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] Antidilutive Securities [Axis] Antidilutive Securities [Axis] Accounts payable Accounts Payable, Current Accounting Policies [Abstract] Accounting Policies [Abstract] Revenues: Revenues [Abstract] Debt instrument, unamortized discount Less: unamortized debt discount Debt Instrument, Unamortized Discount Term Loan Term Loan [Member] Term Loan [Member] Leasehold improvements Leasehold Improvements [Member] Carrying Value of Non-marketable Equity Securities Equity Securities without Readily Determinable Fair Value [Table Text Block] Current Fiscal Year End Date Current Fiscal Year End Date Less: imputed interest Lessee, Operating Lease, Liability, Undiscounted Excess Amount Short-term investments Short-Term Investments Statistical Measurement [Axis] Statistical Measurement [Axis] PEO Name PEO Name Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Loss before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Share-based compensation arrangement by share-based payment award, shares issued in period (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Award Type [Domain] Award Type [Domain] Name Outstanding Recovery, Individual Name Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Variable lease, cost Variable Lease, Cost Schedule of Shares Not Included in Computation of Diluted Net Loss Per Share Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table Text Block] Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Non-PEO NEO Non-PEO NEO [Member] Thereafter Lessee, Operating Lease, Liability, to be Paid, After Year Four Lessee, Operating Lease, Liability, to be Paid, After Year Four Performance based options (“PBOs”) Performance Based Options (PBOs) [Member] Performance Based Options (PBOs) [Member] Additional Paid-in Capital Additional Paid-in Capital [Member] Award Timing Predetermined Award Timing Predetermined [Flag] Class of Stock [Line Items] Class of Stock [Line Items] Accounting Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Unbilled receivables Unbilled Receivables, Current Net loss per share, diluted (in dollars per share) Earnings Per Share, Diluted Reduction in the carrying amount of right-of-use assets Operating Lease, Right-of-Use Asset, Periodic Reduction Name Measure Name Entity Interactive Data Current Entity Interactive Data Current Deferred revenue Increase (Decrease) in Contract with Customer, Liability Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] Total Cash, Cash Equivalents, and Short-Term Investments Preferred stock, shares issued (in shares) Preferred Stock, Shares Issued Customer [Axis] Customer [Axis] Innovatus Loan Warrants Innovatus Loan Warrants [Member] Innovatus Loan Warrants Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Indemnification Agreement Indemnification Agreement [Member] Proceeds from sale of property and equipment Proceeds from Sale of Property, Plant, and Equipment Provision for income taxes Income Tax Expense (Benefit) Interest rate, stated percentage Debt Instrument, Interest Rate, Stated Percentage Issuance of common stock warrants in connection with debt issuance Adjustments to Additional Paid in Capital, Warrant Issued Supplemental disclosure of cash flow information: Supplemental Cash Flow Information [Abstract] Total revenues Revenue from Contract with Customer, Excluding Assessed Tax Innovatus Loan - Second Tranche Innovatus Loan - Second Tranche [Member] Innovatus Loan - Second Tranche Other long term liabilities Increase (Decrease) in Other Noncurrent Liabilities Statement of Comprehensive Income [Abstract] Statement of Comprehensive Income [Abstract] Concentration Risk Benchmark [Domain] Concentration Risk Benchmark [Domain] Security Owned Not Readily Marketable [Axis] Security Owned Not Readily Marketable [Axis] Net cash provided by (used in) investing activities Net Cash Provided by (Used in) Investing Activities Loss from operations Operating Income (Loss) Debt instrument, interest, paid in kind Debt Instrument, Interest, Paid In Kind Debt Instrument, Interest, Paid In Kind Number of reportable segments Number of Reportable Segments Total liabilities and stockholders' equity Liabilities and Equity Other non-cash items Other Operating Activities, Cash Flow Statement Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] All Adjustments to Compensation All Adjustments to Compensation [Member] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Accrued compensation Employee-related Liabilities, Current Prepaid expenses and other assets Increase (Decrease) in Prepaid Expense and Other Assets Additional paid-in capital Additional Paid in Capital Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Legal Entity [Axis] Legal Entity [Axis] Interest income Investment Income, Interest Schedule of Stock-based Compensation Expense by Security Types Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block] Schedule of Maturities of Long-Term Debt Schedule of Maturities of Long-Term Debt [Table Text Block] Underlying Security Market Price Change Underlying Security Market Price Change, Percent Individual: Individual [Axis] Accumulated Other Comprehensive Income (Loss) AOCI Attributable to Parent [Member] Cantor Sales Agreement Cantor Sales Agreement [Member] Cantor Sales Agreement Expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Restricted cash, current Restricted Cash Inventories Total inventories Inventory, Net Long-Term Debt, Type [Domain] Long-Term Debt, Type [Domain] Product and Service [Axis] Product and Service [Axis] Entity Address, State or Province Entity Address, State or Province Property, Plant and Equipment [Line Items] Property, Plant and Equipment [Line Items] Statement [Line Items] Statement [Line Items] Debt instrument, facility fee, percent Debt Instrument, Facility Fee, Percent Debt Instrument, Facility Fee, Percent Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Schedule of Property and Equipment, Net Property, Plant and Equipment [Table Text Block] Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] Financial Instruments [Domain] Financial Instruments [Domain] Liabilities and Stockholders' Equity Liabilities and Equity [Abstract] Accrued compensation and other accrued liabilities Increase (Decrease) in Employee Related Liabilities and Other Accrued Liabilities Increase (Decrease) in Employee Related Liabilities and Other Accrued Liabilities Minimum Minimum [Member] Restatement Determination Date Restatement Determination Date Unamortized debt issuance expense Less: unamortized debt issuance cost Unamortized Debt Issuance Expense Adoption Date Trading Arrangement Adoption Date Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Deferred revenue, net of current portion Contract with Customer, Liability, Noncurrent Schedule of Property, Plant and Equipment [Table] Property, Plant and Equipment [Table] Concentration Risk [Table] Concentration Risk [Table] Right-of-use assets - Operating leases, net Operating Lease, Right-of-Use Asset Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Provision (recovery) for credit losses Accounts Receivable, Credit Loss Expense (Reversal) Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member] Class of warrant or right, fair value Class Of Warrant Or Right, Fair Value Class Of Warrant Or Right, Fair Value Total principal payments Long-Term Debt, Gross Exercise Price Award Exercise Price Unrealized or realized gains or losses Non Marketable Debt Securities Without Readily Determinable Fair Value Annual Amount Non Marketable Debt Securities Without Readily Determinable Fair Value Annual Amount Other Other Accrued Liabilities Net Loss per Share Earnings Per Share [Text Block] Arrangement Duration Trading Arrangement Duration Issuance of common stock upon exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Stockholders' equity: Equity, Attributable to Parent [Abstract] Marketable Securities [Table] Marketable Securities [Table] Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] Debt instrument, term Debt Instrument, Term All Individuals All Individuals [Member] Share-based compensation arrangement by share-based payment award, maximum employee subscription amount Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Amount Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Amount PEO PEO [Member] Name Trading Arrangement, Individual Name Interest and other expense, net Other Nonoperating Income (Expense) Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Property, Plant and Equipment, Type [Axis] Long-Lived Tangible Asset [Axis] Sale of stock, securities registered aggregate amount Sale Of Stock, Securities Registered Aggregate Amount Sale Of Stock, Securities Registered Aggregate Amount Unrealized Gains Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax Compensation not yet recognized, share-based awards other than options Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount 2025 Long-Term Debt, Maturity, Remainder of Fiscal Year Schedule of Customers that Contributed 10% or More of Total Accounts Receivable Schedules of Concentration of Risk, by Risk Factor [Table Text Block] Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] Sale of stock, value of shares for issuance Sale Of Stock, Value Of Shares For Issuance Sale Of Stock, Value Of Shares For Issuance Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table] Shares reserved for future issuance (in shares) Common Stock, Capital Shares Reserved for Future Issuance Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member] Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Local Phone Number Local Phone Number Share-based compensation arrangement by share-based payment award, consecutive offering period Share-Based Compensation Arrangement By Share-based Payment Award, Consecutive Offering Period Share-Based Compensation Arrangement By Share-based Payment Award, Consecutive Offering Period Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Americas Americas [Member] Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Less: uncapitalized payment in-kind interest Debt Instrument, Uncapitalized Payment In-kind Interest Debt Instrument, Uncapitalized Payment In-kind Interest PEO Total Compensation Amount PEO Total Compensation Amount Purchase price of common stock Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent Property, Plant and Equipment, Type [Domain] Long-Lived Tangible Asset [Domain] Schedule of Other Accrued Liabilities Schedule of Accrued Liabilities [Table Text Block] Income Statement Location [Axis] Statement of Income Location, Balance [Axis] Long-Term Unbilled Receivables Long-Term Unbilled Receivables [Member] Long-Term Unbilled Receivables Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Accrued professional and outside service fees Accrued Professional Fees Debt Disclosure [Abstract] Common Stock Common Stock [Member] Measure: Measure [Axis] Preferred stock, shares authorized (in shares) Preferred Stock, Shares Authorized Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Issuance of common stock, net of issuance costs (in shares) Stock Issued During Period, Shares, New Issues Entity Emerging Growth Entity Emerging Growth Company Segment Reporting [Abstract] Segment Reporting [Abstract] Entity Central Index Key Entity Central Index Key Other investments in non-marketable equity securities Other Security Investments [Member] Schedule of Inventory Components Schedule of Inventory, Current [Table Text Block] Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Capital Stock Equity [Text Block] Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Equity Component [Domain] Equity Component [Domain] Preferred stock, par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share Financial Instrument [Axis] Financial Instrument [Axis] Segment, Geographical and Other Revenue Information Segment Reporting Disclosure [Text Block] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Entity Shell Company Entity Shell Company Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Title Trading Arrangement, Individual Title Statement [Table] Statement [Table] Balance Sheets Details [Abstract] Balance Sheets Details [Abstract] -- None. No documentation exists for this element. -- Interest expense, debt Interest Expense, Debt Basis of Presentation and Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] City Area Code City Area Code Current liabilities: Liabilities, Current [Abstract] Geographic Distribution [Domain] Geographic Distribution [Domain] Interest paid Interest Paid, Excluding Capitalized Interest, Operating Activities Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] Purchases of short-term investments Payments to Acquire Short-Term Investments Concentration Risk Benchmark [Axis] Concentration Risk Benchmark [Axis] Fair Value, Inputs, Level 1 Fair Value, Inputs, Level 1 [Member] Total current assets Assets, Current Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Supplemental non-cash investing and financing activities: Noncash Investing and Financing Items [Abstract] 2028 Long-Term Debt, Maturity, Year Three Other-than-temporary impairment losses Debt Securities, Available-for-Sale, Unrealized Loss Schedule of Long-Term Debt Instruments [Table] Schedule of Long-Term Debt Instruments [Table] Long-term debt Long-Term Debt, Excluding Current Maturities Total non-marketable equity securities Equity Securities without Readily Determinable Fair Value, Amount 2029 Lessee, Operating Lease, Liability, to be Paid, Year Four Earnings Per Share [Abstract] Earnings Per Share [Abstract] Gross sales commission proceeds, percentage Sale Of Stock, Commission Fee, Percent Sale Of Stock, Commission Fee, Percent Equity [Abstract] Equity [Abstract] Accumulated deficit Retained Earnings (Accumulated Deficit) Short-Term Unbilled Receivables Short-Term Unbilled Receivables [Member] Short-Term Unbilled Receivables Inventories Increase (Decrease) in Inventories 2027 Long-Term Debt, Maturity, Year Two Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Equity Awards Adjustments Equity Awards Adjustments [Member] Weighted-average discount rate Operating Lease, Weighted Average Discount Rate, Percent Lease obligations Operating Lease, Liability Net cash provided by financing activities Net Cash Provided by (Used in) Financing Activities Underlying Securities Award Underlying Securities Amount Amendment Flag Amendment Flag Loss Contingency Nature [Axis] Loss Contingency Nature [Axis] Total Cash, Cash Equivalents And Short Term Investments, Amortized Cost Cash, Cash Equivalents And Short Term Investments, Amortized Cost Entity Registrant Name Entity Registrant Name Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Schedule of Commitments and Contingencies [Line Items] Schedule of Commitments and Contingencies [Line Items] Schedule of Commitments and Contingencies [Line Items] Depreciation and amortization Depreciation, Depletion and Amortization Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Fair Value as of Grant Date Award Grant Date Fair Value Customer Concentration Risk Customer Concentration Risk [Member] Fair Value, Inputs, Level 2 Fair Value, Inputs, Level 2 [Member] Debt Debt Disclosure [Text Block] Fair Value, Measurements, Fair Value Hierarchy [Domain] Fair Value Hierarchy and NAV [Domain] Geographical [Domain] Geographical [Domain] Recovery of Erroneously Awarded Compensation Disclosure [Line Items] Face value of debt Debt Instrument, Face Amount Disaggregation of Revenue Disaggregation of Revenue [Table Text Block] Unbilled receivables Unbilled Contracts Receivable Entity Address, Postal Zip Code Entity Address, Postal Zip Code Schedule of Stock-based Compensation Expense Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Consolidation Consolidation, Policy [Policy Text Block] Restatement Determination Date: Restatement Determination Date [Axis] Title of 12(b) Security Title of 12(b) Security Concentration Risk Type [Axis] Concentration Risk Type [Axis] Common stock, $0.0001 par value per share; 200,000 shares authorized; 82,841 shares and 81,850 shares issued and outstanding as of March 31, 2025 and December 31, 2024, respectively Common Stock, Value, Issued Customer B Customer B [Member] Customer B [Member] Unbilled receivables, not billable Unbilled Receivables, Not Billable Share-based Payment Arrangement [Abstract] Share-Based Payment Arrangement [Abstract] Amounts included in contract liabilities at the beginning of the period: Change in Contract with Customer, Asset and Liability [Abstract] Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Security Owned Not Readily Marketable, Name [Domain] Security Owned Not Readily Marketable, Name [Domain] Customer G Customer G [Member] Customer G Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member] Financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member] Concentration Risk [Line Items] Concentration Risk [Line Items] Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding Preferred Stock, Value, Issued Finished goods Inventory, Finished Goods, Gross Shares issuable under the Equity Incentive Plan and ESPP Share-Based Payment Arrangement [Member] ESPP Employee Stock [Member] Net loss per share, basic (in dollars per share) Earnings Per Share, Basic Accounts payable Increase (Decrease) in Accounts Payable Operating cash flows from operating leases Operating Lease, Payments Cash and Cash Equivalents Cash and Cash Equivalents [Member] Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Financial assets: Financing Receivable, before Allowance for Credit Loss [Abstract] Capital expenditures incurred but not yet paid Capital Expenditures Incurred but Not yet Paid Aggregate Pension Adjustments Service Cost Aggregate Pension Adjustments Service Cost [Member] Customer A Customer A [Member] Customer A [Member] Financial assets Increase (Decrease) in Finance Receivables Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Schedule of Stock by Class [Table] Stock, Class of Stock [Table] Total current liabilities Liabilities, Current Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member] Compensation not yet recognized, stock options Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount Total assets Assets Cost of product revenue Cost of Goods and Services Sold Add: amortized exit fee Debt Instrument, Amortized Exit Fee Debt Instrument, Amortized Exit Fee Fair Value, Assets Measured on Recurring Basis Fair Value, Assets Measured on Recurring Basis [Table Text Block] Cash reconciliation: Cash and Cash Equivalents [Abstract] Purchase of property and equipment Payments to Acquire Property, Plant, and Equipment Other long-term liabilities Other Liabilities, Noncurrent Debt instrument, interest payable, term Debt Instrument, Interest Payable, Term Debt Instrument, Interest Payable, Term Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Fair Value Measurements Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block] Commitments and Contingencies (Note 10) Commitments and Contingencies Termination Date Trading Arrangement Termination Date Amortization of discount on short-term investments Amortization Of Discount On Short-term Investments Amortization Of Discount On Short-term Investments Class of Warrant or Right [Domain] Class of Warrant or Right [Domain] Description of Business Nature of Operations [Text Block] Class of warrant or right, exercise price of warrants or rights (in dollars per share) Class of Warrant or Right, Exercise Price of Warrants or Rights Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] 2027 Lessee, Operating Lease, Liability, to be Paid, Year Two 2026 Long-Term Debt, Maturity, Year One Stock-based Compensation Share-Based Payment Arrangement [Text Block] Entity Address, City or Town Entity Address, City or Town Proceeds from long-term debt Proceeds from Issuance of Long-Term Debt Debt Instrument [Axis] Debt Instrument [Axis] Proceeds from maturity of short-term investments Proceeds from Maturities, Prepayments and Calls of Short-Term Investments Share-based payment arrangement, expense Share-Based Payment Arrangement, Expense Net loss Net loss Net loss Net Income (Loss) Attributable to Parent Trading Arrangement: Trading Arrangement [Axis] Investments, Debt and Equity Securities [Abstract] Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Performance-contingent restricted stock units (“PSUs”) Performance Stock Units [Member] Performance Stock Units [Member] Equity Awards Adjustments, Excluding Value Reported in Compensation Table Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member] Customer F Customer F [Member] Customer F Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member] Entity File Number Entity File Number Revenue Recognition Revenue from Contract with Customer [Text Block] Document Fiscal Year Focus Document Fiscal Year Focus Income Statement [Abstract] Income Statement [Abstract] Entity Address, Address Line One Entity Address, Address Line One Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Name Forgone Recovery, Individual Name 2025 (remaining 9 months) Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Weighted-average remaining lease term (in years) Operating Lease, Weighted Average Remaining Lease Term Document Period End Date Document Period End Date Sale of Stock [Axis] Sale of Stock [Axis] Loss Contingency, Nature [Domain] Loss Contingency, Nature [Domain] Short-term Investments Investment, Policy [Policy Text Block] Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Innovatus Loan Innovatus Loan [Member] Innovatus Loan Total minimum lease payments Lessee, Operating Lease, Liability, to be Paid Insider Trading Arrangements [Line Items] Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount 2028 Lessee, Operating Lease, Liability, to be Paid, Year Three PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Performance obligations satisfied Contract with Customer, Liability, Revenue Recognized Adjustment to Compensation: Adjustment to Compensation [Axis] Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current Accounts Receivable Accounts Receivable [Member] Restricted cash Restricted Cash and Cash Equivalents, Noncurrent Total financial assets, net Accounts and Financing Receivable, after Allowance for Credit Loss, Current Document Transition Report Document Transition Report Customer C Customer C [Member] Customer C [Member] Document Quarterly Report Document Quarterly Report Accrued purchases Purchase Obligation Laboratory equipment Laboratory Equipment [Member] Laboratory Equipment [Member] Customer [Domain] Customer [Domain] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Table] Fair Value, Recurring and Nonrecurring [Table] Accumulated other comprehensive income Accumulated Other Comprehensive Income (Loss), Net of Tax Entity Current Reporting Status Entity Current Reporting Status Accumulated Deficit Retained Earnings [Member] Restricted cash, current and non-current Restricted Cash and Cash Equivalents Non-cash interest expense Amortization of Debt Issuance Costs Pension Adjustments Service Cost Pension Adjustments Service Cost [Member] Weighted average common stock shares used in computing net loss per share, basic (in shares) Weighted Average Number of Shares Outstanding, Basic Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Marketable Securities [Line Items] Marketable Securities [Line Items] Schedule of Revenues from External Customers and Long-Lived Assets [Table] Schedule of Revenues from External Customers and Long-Lived Assets [Table] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] APAC APAC [Member] Regions of Australia, New Zealand, Southeast Asia and China Executive Category: Executive Category [Axis] Customer D Customer D [Member] Customer D [Member] Name Awards Close in Time to MNPI Disclosures, Individual Name Construction in progress Construction in Progress [Member] Entity Filer Category Entity Filer Category Impairment charges related to contract assets Contract with Customer, Asset, Credit Loss Expense (Reversal) Performance obligation Revenue, Remaining Performance Obligation, Amount Income Statement Location [Domain] Statement of Income Location, Balance [Domain] Company Selected Measure Name Company Selected Measure Name Costs incurred in connection with equity sales agreements Costs Incurred In Connection With Equity Sales Agreements Costs Incurred In Connection With Equity Sales Agreements Prime Rate [Member] EX-101.PRE 10 cdxs-20250331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 12 R1.htm IDEA: XBRL DOCUMENT v3.25.1
Cover Page - shares
3 Months Ended
Mar. 31, 2025
May 09, 2025
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Mar. 31, 2025  
Document Transition Report false  
Entity File Number 001-34705  
Entity Registrant Name Codexis, Inc.  
Entity Incorporation, State or Country Code DE  
Entity Tax Identification Number 71-0872999  
Entity Address, Address Line One 200 Penobscot Drive  
Entity Address, City or Town Redwood City  
Entity Address, State or Province CA  
Entity Address, Postal Zip Code 94063  
City Area Code 650  
Local Phone Number 421-8100  
Title of 12(b) Security Common Stock, par value $0.0001 per share  
Trading Symbol CDXS  
Security Exchange Name NASDAQ  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Non-accelerated Filer  
Entity Small Business true  
Entity Emerging Growth false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   82,844,849
Entity Central Index Key 0001200375  
Amendment Flag false  
Document Fiscal Year Focus 2025  
Document Fiscal Period Focus Q1  
Current Fiscal Year End Date --12-31  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Balance Sheets (Unaudited) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Current assets:    
Cash and cash equivalents $ 18,319 $ 19,264
Restricted cash, current 504 503
Short-term investments 41,462 54,194
Financial assets:    
Accounts receivable 6,442 11,920
Contract assets 1,788 4,375
Unbilled receivables 3,406 2,751
Total financial assets 11,636 19,046
Less: allowances (49) (162)
Total financial assets, net 11,587 18,884
Inventories 1,781 1,799
Prepaid expenses and other current assets 4,155 4,128
Total current assets 77,808 98,772
Restricted cash 1,062 1,062
Investment in non-marketable equity securities 2,798 2,798
Right-of-use assets - Operating leases, net 27,986 28,700
Property and equipment, net 15,803 14,197
Goodwill 2,463 2,463
Other non-current assets 967 1,019
Total assets 128,887 149,011
Current liabilities:    
Accounts payable 6,046 2,838
Accrued compensation 6,387 11,410
Other accrued liabilities 5,117 6,223
Current portion of lease obligations - Operating leases 2,913 2,827
Deferred revenue 438 350
Total current liabilities 20,901 23,648
Deferred revenue, net of current portion 490 100
Long-term lease obligations - Operating leases 27,398 28,163
Long-term debt 29,186 28,905
Other long-term liabilities 1,283 1,268
Total liabilities 79,258 82,084
Commitments and Contingencies (Note 10)
Stockholders' equity:    
Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding 0 0
Common stock, $0.0001 par value per share; 200,000 shares authorized; 82,841 shares and 81,850 shares issued and outstanding as of March 31, 2025 and December 31, 2024, respectively 8 8
Additional paid-in capital 633,101 629,673
Accumulated other comprehensive income 14 52
Accumulated deficit (583,494) (562,806)
Total stockholders' equity 49,629 66,927
Total liabilities and stockholders' equity $ 128,887 $ 149,011
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) - $ / shares
Mar. 31, 2025
Dec. 31, 2024
Statement of Financial Position [Abstract]    
Preferred stock, par value (in dollars per share) $ 0.0001 $ 0.0001
Preferred stock, shares authorized (in shares) 5,000,000 5,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.0001 $ 0.0001
Common stock, shares authorized (in shares) 200,000,000 200,000,000
Common stock, shares, issued (in shares) 82,841,000 81,850,000
Common stock, shares outstanding (in shares) 82,841,000 81,850,000
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Statements of Operations (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Revenues:    
Total revenues $ 7,543 $ 17,073
Costs and operating expenses:    
Cost of product revenue 2,732 4,855
Research and development 12,942 11,246
Selling, general and administrative 12,355 12,860
Total costs and operating expenses 28,029 28,961
Loss from operations (20,486) (11,888)
Interest income 751 909
Interest and other expense, net (942) (516)
Loss before income taxes (20,677) (11,495)
Provision for income taxes 11 10
Net loss $ (20,688) $ (11,505)
Net loss per share, basic (in dollars per share) $ (0.25) $ (0.16)
Net loss per share, diluted (in dollars per share) $ (0.25) $ (0.16)
Weighted average common stock shares used in computing net loss per share, basic (in shares) 82,410 69,854
Weighted average common stock shares used in computing net loss per share, diluted (in shares) 82,410 69,854
Product revenue    
Revenues:    
Total revenues $ 6,059 $ 9,551
Research and development revenue    
Revenues:    
Total revenues $ 1,484 $ 7,522
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Statements of Comprehensive Loss (Unaudited) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Statement of Comprehensive Income [Abstract]    
Net loss $ (20,688) $ (11,505)
Other comprehensive loss:    
Unrealized loss on available-for-sale short-term investments, net of tax (38) (16)
Comprehensive loss $ (20,726) $ (11,521)
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)
$ in Thousands
Total
Common Stock
Additional Paid-in Capital
Accumulated Other Comprehensive Income (Loss)
Accumulated Deficit
Beginning balance (in shares) at Dec. 31, 2023   69,905,000      
Beginning balance at Dec. 31, 2023 $ 86,615 $ 7 $ 584,138 $ 0 $ (497,530)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Issuance of common stock upon exercise of stock options (in shares) 72,856 73,000      
Issuance of common stock upon exercise of stock options $ 143   143    
Issuance of common stock upon release of stock awards (in shares)   576,000      
Issuance of common stock warrants in connection with debt issuance 859   859    
Stock-based compensation 3,171   3,171    
Net loss (11,505)       (11,505)
Other comprehensive loss (16)     (16)  
Ending balance (in shares) at Mar. 31, 2024   70,554,000      
Ending balance at Mar. 31, 2024 79,267 $ 7 588,311 (16) (509,035)
Beginning balance (in shares) at Dec. 31, 2024   81,850,000      
Beginning balance at Dec. 31, 2024 $ 66,927 $ 8 629,673 52 (562,806)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Issuance of common stock upon exercise of stock options (in shares) 339,142 339,000      
Issuance of common stock upon exercise of stock options $ 1,049   1,049    
Issuance of common stock upon release of stock awards (in shares)   652,000      
Stock-based compensation 2,379   2,379    
Net loss (20,688)       (20,688)
Other comprehensive loss (38)     (38)  
Ending balance (in shares) at Mar. 31, 2025   82,841,000      
Ending balance at Mar. 31, 2025 $ 49,629 $ 8 $ 633,101 $ 14 $ (583,494)
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Operating activities:    
Net loss $ (20,688) $ (11,505)
Adjustments to reconcile net loss to net cash used in operating activities:    
Depreciation and amortization 1,195 1,252
Reduction in the carrying amount of right-of-use assets 714 773
Stock-based compensation 2,379 3,171
Provision (recovery) for credit losses (113) 0
Non-cash interest expense 281 82
Amortization of discount on short-term investments (330) (41)
Other non-cash items (3) (10)
Changes in operating assets and liabilities:    
Financial assets 7,426 5,571
Inventories 18 244
Prepaid expenses and other assets 31 (146)
Accounts payable 2,065 (2,038)
Accrued compensation and other accrued liabilities (6,501) (3,875)
Other long term liabilities (750) (996)
Deferred revenue 478 (271)
Net cash used in operating activities (13,798) (7,789)
Investing activities:    
Purchase of property and equipment (1,256) (1,130)
Proceeds from sale of property and equipment 1 11
Purchases of short-term investments (10,326) (27,444)
Proceeds from maturity of short-term investments 23,350 0
Net cash provided by (used in) investing activities 11,769 (28,563)
Financing activities:    
Proceeds from exercises of stock options 1,098 281
Costs incurred in connection with equity sales agreements (13) (60)
Proceeds from long-term debt 0 29,521
Payment of debt issuance costs 0 (461)
Net cash provided by financing activities 1,085 29,281
Net decrease in cash, cash equivalents and restricted cash (944) (7,071)
Cash, cash equivalents and restricted cash at the beginning of the period 20,829 66,697
Cash, cash equivalents and restricted cash at the end of the period 19,885 59,626
Supplemental disclosure of cash flow information:    
Interest paid 432 147
Income taxes paid 0 17
Supplemental non-cash investing and financing activities:    
Capital expenditures incurred but not yet paid 2,073 371
Cash reconciliation:    
Cash and cash equivalents 18,319 58,046
Restricted cash, current and non-current 1,566 1,580
Total cash, cash equivalents and restricted cash $ 19,885 $ 59,626
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.25.1
Condensed Consolidated Statements of Cash Flows (Parenthetical) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Mar. 31, 2024
Statement of Cash Flows [Abstract]      
Short-term investments $ 41,462 $ 54,194 $ 27,500
Total $ 59,781 $ 73,458 $ 85,500
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.25.1
Description of Business
3 Months Ended
Mar. 31, 2025
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Description of Business Description of Business
In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.
We discover, develop, enhance, and commercialize novel, high performance enzymes and other classes of proteins leveraging our proprietary CodeEvolver directed evolution technology platform.
The Company's operations are managed and reported to the Chief Executive Officer (“CEO”), our chief operating decision maker (“CODM”), on a consolidated basis as one reportable segment.
XML 21 R10.htm IDEA: XBRL DOCUMENT v3.25.1
Basis of Presentation and Summary of Significant Accounting Policies
3 Months Ended
Mar. 31, 2025
Accounting Policies [Abstract]  
Basis of Presentation and Summary of Significant Accounting Policies Basis of Presentation and Summary of Significant Accounting Policies
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (“GAAP”) and the applicable rules and regulations of the Securities and Exchange Commission (“SEC”) for interim financial information but does not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2024. The condensed consolidated balance sheet at December 31, 2024 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three months ended March 31, 2025 and 2024, are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2024 Annual Report on Form 10-K and are updated below as necessary. There have been no significant changes in our significant accounting policies or critical accounting estimates since December 31, 2024.
The unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of March 31, 2025 and results of operations for the interim periods presented. The interim results are not necessarily indicative of the results for any future interim period or for the entire year.
The unaudited condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, deferred revenue, inventories, valuation of equity investments, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the condensed consolidated financial statements.
Short-term Investments
We classify all marketable debt securities that have effective maturities of three months or less from the date of purchase as cash equivalents and those with effective maturities of greater than three months as short-term investment securities in the condensed consolidated balance sheets. We determine the appropriate classification of our short-term investments at the time of purchase and reevaluate such designation at each balance sheet date. We have classified and accounted for our short-term investments as available-for-sale. After consideration of our risk versus reward objectives, as well as our liquidity requirements, we may sell these debt securities prior to their effective maturities.
We carry these short-term investments at fair value, and report the unrealized gains and losses, net of taxes, as a component of stockholders’ equity, except for the changes in allowance for expected credit losses, which are included in “Interest and other expense, net” in the unaudited condensed consolidated statements of operations. We determine any realized gains or losses on the sale of short-term investments on a specific identification method, and we record such gains and losses as a component of “Interest income” in the unaudited condensed consolidated statements of operations.
Short-term investments are reviewed periodically for allowances for credit losses and impairment. When evaluating the investments, the Company reviews factors such as the extent to which the fair value of the security is less than the amortized cost basis, adverse conditions specifically related to the security, the financial condition of the issuer, the Company’s intent to sell, and whether it would be more likely than not that the Company would be required to sell the investments before the recovery of the amortized cost basis.
Accounting Pronouncements
Recently adopted accounting pronouncements
In December 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The amendments in the ASU require public companies, on an annual basis, to provide disclosures of specific categories in the rate reconciliation, as well as disclosure of income taxes paid disaggregated by jurisdiction. The standard was adopted beginning January 1, 2025 on a prospective basis. ASU No. 2023-09 will become effective in the Company’s Annual Report on Form 10-K for the year ending December 31, 2025 and we are continuing to evaluate whether adoption of this standard will have a material impact on our unaudited condensed consolidated financial statements and related disclosures.
Aside from the recently adopted accounting pronouncements described above and recently issued accounting pronouncements not yet adopted and described below, there were no recent accounting pronouncements or changes in accounting pronouncements during the three months ended March 31, 2025, that are of significance or potential significance to us.
Recently issued accounting pronouncements not yet adopted
In November 2024, the FASB issued ASU No. 2024-03, Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses. The amendment in the ASU will require additional disclosures and disaggregation of certain costs and expenses presented on the face of the income statement. In January 2025, the FASB issued ASU 2025-01, “Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40) - Clarifying the Effective Date” to clarify the effective date for non-calendar year-end entities. This guidance is effective for the Company for fiscal years beginning after December 15, 2026. Early adoption is permitted. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In October 2023, FASB issued ASU No. 2023-06, Disclosure Improvements: Codification Amendments in Response to the SEC’s Disclosure Update and Simplification Initiative. The amendments in the ASU are intended to amend certain disclosure and presentation requirements for a variety of topics within the ASC. These amendments align the requirements in the ASC to the removal of certain disclosure requirements set out in Regulation S-X and Regulation S-K, as announced by the SEC. The effective date for each amended topic in the ASC is either the date on which the SEC’s removal of the related disclosure requirement from Regulation S-X or Regulation S-K becomes effective, or on June 30, 2027, if the SEC has not removed the requirements by that date. Early adoption is prohibited. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
XML 22 R11.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition
3 Months Ended
Mar. 31, 2025
Revenue from Contract with Customer [Abstract]  
Revenue Recognition Revenue Recognition
Disaggregation of Revenue
The following table provides information about disaggregated revenue from contracts with customers by geographic regions. The geographic regions that are tracked are the Americas (United States, Canada, and Latin America), EMEA (Europe, Middle East, and Africa), and APAC (Australia, New Zealand, Southeast Asia, and China).
Disaggregated information is as follows (in thousands):
Three Months Ended March 31,
20252024
Primary geographical markets:
EMEA
$3,919 $2,572 
Americas
2,088 7,244 
APAC
1,536 7,257 
Total revenues$7,543 $17,073 
Contract Balances
The following table presents balances of contract assets, unbilled receivables, and contract liabilities (in thousands):
March 31, 2025December 31, 2024
Contract assets$1,788 $4,375 
Unbilled receivables$3,849 $3,208 
Contract liabilities: deferred revenue$928 $450 
We had no asset impairment charges related to financial assets in the three months ended March 31, 2025 and 2024.
The decrease in contract assets was primarily due to decreases in product revenue from contracts subject to over time revenue recognition. The increase in unbilled receivables was primarily due to the timing of billings. The increase in deferred revenue was primarily due to the timing of recognition of revenue.
As of March 31, 2025, we have $3.4 million of short-term unbilled receivables presented as unbilled receivables within current assets and $0.4 million of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets. As of December 31, 2024, we had $2.8 million of short-term unbilled receivables presented as unbilled receivables within current assets and $0.5 million of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets.
We recognized the following revenues (in thousands):
Three Months Ended March 31,
Revenue recognized in the period for:20252024
Amounts included in contract liabilities at the beginning of the period:
Performance obligations satisfied$250 $371 
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods387 189 
Performance obligations satisfied from new activities in the period - contract revenue6,906 16,513 
Total revenues$7,543 $17,073 
Performance Obligations
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of March 31, 2025.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts as of March 31, 2025 (in thousands):
Remainder of 2025
20262027
2028 and Thereafter
Total
Product revenue$428 $140 $40 $320 $928 
XML 23 R12.htm IDEA: XBRL DOCUMENT v3.25.1
Net Loss per Share
3 Months Ended
Mar. 31, 2025
Earnings Per Share [Abstract]  
Net Loss per Share Net Loss per Share
Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards (“RSAs”) subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock shares outstanding, less RSAs subject to forfeiture, plus all additional common shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For all periods presented, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.
Anti-Dilutive Securities
In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect.
The following shares were not considered in the computation of diluted net loss per share because their effect was anti-dilutive (in thousands):
 Three Months Ended March 31,
 20252024
Shares issuable under the Equity Incentive Plan and ESPP(1)
13,80013,105
Warrants(2)
424424
Total potentially dilutive securities14,22413,529
(1) Included 386,635 and 568,224 of anti-dilutive potential common shares from ESPP for the three months ended March 31, 2025 and 2024, respectively.
(2) Pertains to the warrants issued in connection with the Innovatus Loan. For additional information, see Note 11, “Debt.”
XML 24 R13.htm IDEA: XBRL DOCUMENT v3.25.1
Investments in Non-Marketable Securities
3 Months Ended
Mar. 31, 2025
Investments, Debt and Equity Securities [Abstract]  
Investments in Non-Marketable Securities Investments in Non-Marketable Securities
Non-Marketable Equity Securities
Our non-marketable equity securities are investments in privately held companies without readily determinable market value and primarily relate to our investments in seqWell Inc. (“seqWell”) and other investments in non-marketable equity securities. These investments are accounted for under the measurement alternative and are measured at cost minus impairment, if any, plus or minus changes resulting from observable price changes for identical or similar securities of the same issuer. Non-marketable equity securities are measured at fair value on a non-recurring basis and classified within Level 2 in the fair value hierarchy when we estimate the fair value of these investments using the observable transaction price paid by third party investors for the same or similar security of the same issuers. The fair value of non-marketable equity securities are classified within Level 3 when we estimate fair value using unobservable inputs such as when we remeasure due to impairment and we use discount rates, market data of comparable companies, and rights and obligations of the securities the Company holds, among others. We adjust the carrying value of non-marketable equity securities which have been remeasured during the period and recognize resulting gains or losses as a component of interest and other expense, net in the unaudited condensed consolidated statements of operations.
There was no remeasurement event for our investments in non-marketable equity securities that occurred during the three months ended March 31, 2025 and 2024. We recognized no realized gains or losses during the three months ended March 31, 2025 and 2024.
The following table presents the carrying value of our non-marketable equity securities (in thousands):
 March 31, 2025December 31, 2024
seqWell$2,416 $2,416 
Other investments in non-marketable equity securities382 382 
Total non-marketable equity securities$2,798 $2,798 
XML 25 R14.htm IDEA: XBRL DOCUMENT v3.25.1
Fair Value Measurements
3 Months Ended
Mar. 31, 2025
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
The following tables show the Company’s cash, cash equivalents, and short-term investments by significant investment category as of March 31, 2025 and December 31, 2024 (in thousands):
March 31, 2025
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$4,391 $— $— $4,391 $4,391 $— 
Level 1:
Money market funds
6,209 — — 6,209 6,209 — 
Level 2(1):
Commercial paper15,123 (2)15,123 7,719 7,404 
Corporate debt11,244 (8)11,238 — 11,238 
U.S. agency securities1,995 — 1,996 — 1,996 
U.S. treasury securities20,805 19 — 20,824 — 20,824 
Subtotal49,167 24 (10)49,181 7,719 41,462 
Total$59,767 $24 $(10)$59,781 $18,319 $41,462 
December 31, 2024
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$3,284 $— $— $3,284 $3,284 $— 
Level 1:
Money market funds
15,980 — — 15,980 15,980 — 
Level 2(1):
Commercial paper6,768 — 6,769 — 6,769 
Corporate debt17,187 (15)17,180 — 17,180 
U.S. agency securities1,989 — 1,991 — 1,991 
U.S. treasury securities28,198 56 — 28,254 — 28,254 
Subtotal54,142 67 (15)54,194 — 54,194 
Total$73,406 $67 $(15)$73,458 $19,264 $54,194 
(1) The valuation techniques used to measure the fair values of the Company’s Level 2 financial instruments uses inputs that are either directly or indirectly observable for the asset through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.
We limit the credit risk associated with our cash equivalents and short-term investments by placing them with banks and institutions we believe are highly credit-worthy and investing in highly-rated investments. As of March 31, 2025 and December 31, 2024, the contractual maturity of all investments held was less than one year.
During the three months ended March 31, 2025 and 2024, we did not recognize any significant credit losses nor other-than-temporary impairment losses on our short-term investments.
XML 26 R15.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details
3 Months Ended
Mar. 31, 2025
Balance Sheets Details [Abstract]  
Balance Sheets Details Balance Sheet Details
Inventories
Inventories consisted of the following (in thousands):
March 31, 2025December 31, 2024
Work in process$— $29 
Finished goods1,781 1,770 
Total inventories
$1,781 $1,799 
Prepaid expenses and other current assets
As of March 31, 2025, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million. As of December 31, 2024, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million.
Property and Equipment, net
Property and equipment, net consisted of the following (in thousands):
March 31, 2025December 31, 2024
Laboratory equipment$36,198 $35,949 
Leasehold improvements14,256 12,159 
Computer equipment and software2,534 2,459 
Office equipment and furniture1,164 1,124 
Construction in progress3,223 3,441 
Property and equipment57,375 55,132 
Less: accumulated depreciation and amortization(41,572)(40,935)
Property and equipment, net$15,803 $14,197 
Depreciation expense included in both research and development expenses and selling, general and administrative expenses in the unaudited condensed consolidated statements of operations was as follows (in thousands):
Three Months Ended March 31,
20252024
Research and development$946 $1,032 
Selling, general and administrative212 220 
Total depreciation expense
$1,158 $1,252 
Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2025December 31, 2024
Accrued purchases $2,544 $2,908 
Accrued professional and outside service fees2,396 3,064 
Other177 251 
Total other accrued liabilities$5,117 $6,223 
XML 27 R16.htm IDEA: XBRL DOCUMENT v3.25.1
Stock-based Compensation
3 Months Ended
Mar. 31, 2025
Share-Based Payment Arrangement [Abstract]  
Stock-based Compensation Stock-based Compensation
Employee Stock Purchase Plan
In April 2023, our Board of Directors approved an employee stock purchase plan (as may be amended from time to time, the “ESPP”) which became effective upon approval at the 2023 Annual Meeting. The ESPP allows eligible employees of the Company to purchase shares of our common stock through payroll deductions. Offering periods are generally over a 24-month period and begin in May and November of each year. The per share purchase price will be the lower of 85% of the closing trading price per share of our common stock on the first trading date of an offering period in which a participant is enrolled or 85% of the closing trading price per share on the purchase date. Participant purchases are limited to a maximum of $25,000 of fair value of our stock per calendar year. The Company is authorized to grant up to 2,000,000 shares of common stock under the ESPP. The first offering period of the ESPP commenced in December 2023.
No shares of our common stock were purchased under the ESPP during the three months ended March 31, 2025 and 2024. As of March 31, 2025, 1,736,843 shares of common stock were available for future issuance under the ESPP. We recognized $0.1 million of stock-based compensation expenses related to the ESPP for each of the three months ended March 31, 2025 and 2024. As of March 31, 2025, the total unrecognized stock-based compensation expense, net of expected forfeitures, related to the ESPP was $0.4 million and is expected to be recognized over the remaining offering period.
Stock-Based Compensation Expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended March 31,
 20252024
Cost of product revenue$61 $115 
Research and development 665 820 
Selling, general and administrative1,653 2,236 
Total$2,379 $3,171 
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations (in thousands):
 Three Months Ended March 31,
 20252024
Stock options$1,355 $1,514 
RSUs and RSAs919 1,317 
Performance-contingent restricted stock units (“PSUs”)— 247 
Performance based options (“PBOs”)— 16 
ESPP105 77 
Total$2,379 $3,171 
As of March 31, 2025, unrecognized stock-based compensation expense, net of expected forfeitures, was $12.3 million related to unvested stock options and $5.6 million related to unvested RSUs and RSAs. Stock-based compensation expense for these awards will be recognized through 2029.
XML 28 R17.htm IDEA: XBRL DOCUMENT v3.25.1
Capital Stock
3 Months Ended
Mar. 31, 2025
Equity [Abstract]  
Capital Stock Capital Stock
Exercise of Options
For the three months ended March 31, 2025 and March 31, 2024, we issued 339,142 and 72,856 shares, respectively, upon option exercises at a weighted-average exercise price of $3.09 and $1.97 per share, respectively, with net cash proceeds of $1.0 million and $0.1 million, respectively.
Sales Agreements
In May 2021, we filed a Registration Statement on Form S-3 with the SEC (the “2021 Registration Statement”), that automatically became effective upon its filing, under which we were permitted to sell common stock, preferred stock, debt securities, warrants, purchase contracts, and units from time to time in one or more offerings. On February 27, 2023, we filed a post-effective amendment to the 2021 Registration Statement. Pursuant to that post-effective amendment, we registered an aggregate $200.0 million of securities. In May 2021, we entered into an Equity Distribution Agreement (“EDA”) with Piper Sandler & Co (“PSC”), under which PSC, as our exclusive agent, at our discretion and at such times that we determined from time to time, may have sold over a three-year period from the execution of the EDA up to a maximum of $50.0 million of shares of our common stock. Under the terms of the EDA, PSC was permitted to sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act of 1933, as amended (the “Securities Act”).
We were not required to sell any shares at any time during the term of the EDA. On April 24, 2024, we terminated the EDA. No shares of our common stock were issued and sold pursuant to the EDA during the three months ended March 31, 2024.
On May 2, 2024, we entered into a Controlled Equity Offering℠ Sales Agreement (the “Cantor Sales Agreement”) with Cantor Fitzgerald & Co., as sales agent (“Cantor”), under which Cantor, at our discretion and at such times that we may determine from time to time, may sell up to a maximum of $75.0 million of shares of our common stock. Under the terms of the Cantor Sales Agreement, Cantor may sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act. On May 2, 2024, we filed a registration statement on Form S-3 registering the offer and sale of these shares under the Securities Act which became effective on May 14, 2024. We will pay a commission of up to 3.0% of gross sales proceeds of any common stock sold under the Cantor Sales Agreement. In 2024, 10,440,000 shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement, all during the third quarter of 2024, and we received net proceeds of $29.7 million after Cantors’ commissions and direct offering expenses.
During the three months ended March 31, 2025, no shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement. As of March 31, 2024, $43.7 million remained available for sale under the Cantor Sales Agreement.
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies
3 Months Ended
Mar. 31, 2025
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
Lease and other information
The Company has entered into operating leases primarily for office and laboratory space. Lease costs amounts included in the measurement of lease obligations and other information related to non-cancellable operating leases were as follows (in thousands):
Three Months Ended March 31,
 20252024
Operating lease cost(1)
$1,243 $1,032 
(1) The Company had no variable lease costs.
Other information:Operating Leases
Weighted-average remaining lease term (in years)7.6 years
Weighted-average discount rate7.0 %
Three Months Ended March 31,
Cash paid (in thousands):
20252024
Operating cash flows from operating leases$1,208 $1,173 
As of March 31, 2025, our maturity analysis of annual undiscounted cash flows of the non-cancellable operating leases are as follows (in thousands):
Years Ending December 31,Operating Leases
2025 (remaining 9 months)$3,660 
20265,014 
20274,053 
20285,400 
20295,365 
Thereafter15,695 
Total minimum lease payments39,187 
Less: imputed interest8,876 
Lease obligations$30,311 
Reconciliation of operating lease liabilities as shown within the unaudited condensed consolidated balance sheets (in thousands):
Current portion of lease obligations - Operating leases$2,913 
Long-term lease obligations - Operating leases27,398 
Total operating lease liabilities$30,311 
Other Commitments
We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work. As of March 31, 2025, the future minimum payments that we expect to pay, including potential obligations under services agreements subject to risk of cancellation by us, is minimal.
Legal Proceedings
We may be involved in legal actions in the ordinary course of business, including inquiries and proceedings concerning business practices and intellectual property infringement, employee relations and other claims. We will recognize a loss contingency in the consolidated financial statements when it is probable a liability has been incurred and the amount of the loss can be reasonably estimated. We will disclose any loss contingencies that do not meet both conditions if there is a reasonable possibility that a material loss may have been incurred. Gain contingencies are not recorded until they are realized.
We are currently not a party to any material pending litigation or other material legal proceedings that management believes could have a material adverse effect on our financial statements.
Indemnifications
We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third-party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.
XML 30 R19.htm IDEA: XBRL DOCUMENT v3.25.1
Debt
3 Months Ended
Mar. 31, 2025
Debt Disclosure [Abstract]  
Debt Debt
Innovatus Loan Agreement
On February 13, 2024 (the “Closing Date”), we entered into a five-year term loan and security agreement (the “Loan Agreement”) with Innovatus Life Sciences Lending Fund I, LP (“Innovatus”), an affiliate of Innovatus Capital Partners, LLC, for an aggregate principal amount of up to $40.0 million and with a maturity date of February 13, 2029 (the “Innovatus Loan”). The Innovatus Loan consists of two tranches, of which the first tranche of $30.0 million was funded on February 13, 2024. We will be eligible to draw down the second tranche of $10.0 million upon achievement of certain milestones including certain pre-specified revenue thresholds and subject to a payment of a facility fee equal to 1.00% of the amount of such term loan.
The floating per annum interest rate of the Innovatus Loan is equal to the sum of (a) the greater of (i) prime rate published in the Money Rates section of the Wall Street Journal and (ii) 7.50%, plus (b) 3.25%; provided that, at the election of the Company, up to 2.0% of such rate shall be payable in-kind until the third anniversary of the Closing Date. The Company is required to make monthly interest-only payments through February 1, 2027, with the ability to extend the interest-only period through February 1, 2028 upon the achievement of certain pre-specified financial milestones. Following the interest-only period, the Company is required to make monthly amortizing payments, with the remaining balance of the principal plus accrued and unpaid interest due at maturity. For the first three years of the term, 2.0% of the interest is payable in-kind by increasing the principal balance. Prepayments of the loan, in whole or in part, will be subject to an early prepayment fee which ranges between 3.0% and 1.0% and declines each year until the third anniversary date of the Closing Date, after which no prepayment fee is required. The Company is also required to pay an exit fee upon any payment or prepayment equal to 3.0% of the aggregate principal amount of the tranches funded under the Innovatus Loan.
The Innovatus Loan contains customary representations and warranties and covenants, subject to customary carve outs, and includes financial covenants related to liquidity and net product revenue, with the latter beginning with the period ended September 30, 2024. The Innovatus Loan is secured by perfected first priority liens on the Company's assets, and the Loan Agreement includes a negative pledge by the Company which prohibits the Company from permitting liens to be placed upon the Company's intellectual property in favor of any party other than Innovatus.
In connection with the issuance of the Innovatus Loan, we recorded a debt discount of $1.3 million and capitalized debt issuance costs of $0.6 million during the first quarter of 2024. The discount and issuance costs will be amortized over the life of the Innovatus Loan. Interest expense for the Innovatus Loan for the three months ended March 31, 2025 and 2024 was $0.9 million and $0.5 million, respectively, and is inclusive of non-cash amortization of the debt discount, debt issuance costs, payable in-kind interest, and accretion of final payment. The carrying amount of the Innovatus Loan approximates fair value given its recent issuance and the interest rate is based on the current prime rate. The effective interest rate for the Innovatus Loan was 13.1% as of March 31, 2025.
Additionally, in connection with entering into the Innovatus Loan, we entered into a Warrant Agreement with Innovatus on February 13, 2024 and issued to Innovatus a warrant to purchase an aggregate of 424,028 shares of the Company’s common stock at an exercise price of $2.83 per share. The warrants may be exercised on a cashless basis, and are immediately exercisable through the 10th anniversary of the issuance date. At the time of issuance, the Company determined the estimated fair value of the warrants of $0.9 million using the Black-Scholes model. As the warrants represent a freestanding equity instrument, the Company recorded the fair value of the warrants in additional paid-in capital during the first quarter of 2024.
The Company accounts for the amortization of the debt discount and issuance costs utilizing the effective interest method. Long-term debt consisted of the following at March 31, 2025 (in thousands):
March 31, 2025
Face value of debt$30,000 
Add: payment in-kind interest634 
Add: amortized exit fee166 
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
The future principal payments under the Innovatus Loan are as follows (in thousands):
Years Ending December 31,
2025$— 
2026— 
202713,264 
202815,917 
20292,653 
Total principal payments31,834 
Add: amortized exit fee166 
Less: uncapitalized payment in-kind interest(1,200)
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
XML 31 R20.htm IDEA: XBRL DOCUMENT v3.25.1
Segment, Geographical and Other Revenue Information
3 Months Ended
Mar. 31, 2025
Segment Reporting [Abstract]  
Segment, Geographical and Other Revenue Information Segment, Geographical and Other Revenue Information
Segment Information
We manage our business as one reportable segment. The Company's operations are managed and reported to the CODM on a consolidated basis. The CODM uses consolidated income (loss) from operations and net income (loss) to assess financial performance and make resource allocation decisions. These financial measures are used by the CODM to balance short-term financial results with long-term strategic goals, guiding the allocation of budget between product costs, research and development expenses, and general, selling and administrative expenses.
Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended March 31,
20252024
Customer A34 %*
Customer B17 %10 %
Customer C15 %15 %
Customer D*35 %
* Percentage was less than 10%
Customers that each accounted for 10% or more of accounts receivable balances as of the periods presented as follows:
Percentage of Accounts Receivables as of
March 31, 2025December 31, 2024
Customer C39 %16 %
Customer E36 %18 %
Customer F*12 %
Customer G*10 %
* Percentage was less than 10%
Identifiable long-lived assets by location was as follows (in thousands):
March 31, 2025December 31, 2024
United States$43,952 $43,098 
XML 32 R21.htm IDEA: XBRL DOCUMENT v3.25.1
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Pay vs Performance Disclosure    
Net loss $ (20,688) $ (11,505)
XML 33 R22.htm IDEA: XBRL DOCUMENT v3.25.1
Insider Trading Arrangements
3 Months Ended
Mar. 31, 2025
shares
Trading Arrangements, by Individual  
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
Kevin Norrett [Member]  
Trading Arrangements, by Individual  
Material Terms of Trading Arrangement
On March 11, 2025, Kevin Norrett, our Chief Operating Officer, adopted a trading plan intended to satisfy the affirmative defense conditions of Rule 10b5-1(c). The plan provides for the sale of up to 66,602 shares of the Company’s common stock and will terminate on January 30, 2026, subject to early termination for certain specified events set forth in the plan.
Name Kevin Norrett
Title Chief Operating Officer
Rule 10b5-1 Arrangement Adopted true
Adoption Date March 11, 2025
Expiration Date January 30, 2026
Arrangement Duration 325 days
Aggregate Available 66,602
XML 34 R23.htm IDEA: XBRL DOCUMENT v3.25.1
Basis of Presentation and Summary of Significant Accounting Policies (Policies)
3 Months Ended
Mar. 31, 2025
Accounting Policies [Abstract]  
Basis of Presentation and Principles of Consolidation
Basis of Presentation and Principles of Consolidation
The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (“GAAP”) and the applicable rules and regulations of the Securities and Exchange Commission (“SEC”) for interim financial information but does not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2024. The condensed consolidated balance sheet at December 31, 2024 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three months ended March 31, 2025 and 2024, are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2024 Annual Report on Form 10-K and are updated below as necessary. There have been no significant changes in our significant accounting policies or critical accounting estimates since December 31, 2024.
The unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of March 31, 2025 and results of operations for the interim periods presented. The interim results are not necessarily indicative of the results for any future interim period or for the entire year.
Consolidation The unaudited condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation.
Use of Estimates
Use of Estimates
The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, deferred revenue, inventories, valuation of equity investments, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the condensed consolidated financial statements.
Short-term Investments
Short-term Investments
We classify all marketable debt securities that have effective maturities of three months or less from the date of purchase as cash equivalents and those with effective maturities of greater than three months as short-term investment securities in the condensed consolidated balance sheets. We determine the appropriate classification of our short-term investments at the time of purchase and reevaluate such designation at each balance sheet date. We have classified and accounted for our short-term investments as available-for-sale. After consideration of our risk versus reward objectives, as well as our liquidity requirements, we may sell these debt securities prior to their effective maturities.
We carry these short-term investments at fair value, and report the unrealized gains and losses, net of taxes, as a component of stockholders’ equity, except for the changes in allowance for expected credit losses, which are included in “Interest and other expense, net” in the unaudited condensed consolidated statements of operations. We determine any realized gains or losses on the sale of short-term investments on a specific identification method, and we record such gains and losses as a component of “Interest income” in the unaudited condensed consolidated statements of operations.
Short-term investments are reviewed periodically for allowances for credit losses and impairment. When evaluating the investments, the Company reviews factors such as the extent to which the fair value of the security is less than the amortized cost basis, adverse conditions specifically related to the security, the financial condition of the issuer, the Company’s intent to sell, and whether it would be more likely than not that the Company would be required to sell the investments before the recovery of the amortized cost basis.
Accounting Pronouncements
Accounting Pronouncements
Recently adopted accounting pronouncements
In December 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) No. 2023-09, Income Taxes (Topic 740): Improvements to Income Tax Disclosures. The amendments in the ASU require public companies, on an annual basis, to provide disclosures of specific categories in the rate reconciliation, as well as disclosure of income taxes paid disaggregated by jurisdiction. The standard was adopted beginning January 1, 2025 on a prospective basis. ASU No. 2023-09 will become effective in the Company’s Annual Report on Form 10-K for the year ending December 31, 2025 and we are continuing to evaluate whether adoption of this standard will have a material impact on our unaudited condensed consolidated financial statements and related disclosures.
Aside from the recently adopted accounting pronouncements described above and recently issued accounting pronouncements not yet adopted and described below, there were no recent accounting pronouncements or changes in accounting pronouncements during the three months ended March 31, 2025, that are of significance or potential significance to us.
Recently issued accounting pronouncements not yet adopted
In November 2024, the FASB issued ASU No. 2024-03, Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses. The amendment in the ASU will require additional disclosures and disaggregation of certain costs and expenses presented on the face of the income statement. In January 2025, the FASB issued ASU 2025-01, “Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40) - Clarifying the Effective Date” to clarify the effective date for non-calendar year-end entities. This guidance is effective for the Company for fiscal years beginning after December 15, 2026. Early adoption is permitted. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
In October 2023, FASB issued ASU No. 2023-06, Disclosure Improvements: Codification Amendments in Response to the SEC’s Disclosure Update and Simplification Initiative. The amendments in the ASU are intended to amend certain disclosure and presentation requirements for a variety of topics within the ASC. These amendments align the requirements in the ASC to the removal of certain disclosure requirements set out in Regulation S-X and Regulation S-K, as announced by the SEC. The effective date for each amended topic in the ASC is either the date on which the SEC’s removal of the related disclosure requirement from Regulation S-X or Regulation S-K becomes effective, or on June 30, 2027, if the SEC has not removed the requirements by that date. Early adoption is prohibited. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.
Segment Information
Segment Information
We manage our business as one reportable segment. The Company's operations are managed and reported to the CODM on a consolidated basis. The CODM uses consolidated income (loss) from operations and net income (loss) to assess financial performance and make resource allocation decisions. These financial measures are used by the CODM to balance short-term financial results with long-term strategic goals, guiding the allocation of budget between product costs, research and development expenses, and general, selling and administrative expenses.
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition (Tables)
3 Months Ended
Mar. 31, 2025
Revenue from Contract with Customer [Abstract]  
Disaggregation of Revenue
Disaggregated information is as follows (in thousands):
Three Months Ended March 31,
20252024
Primary geographical markets:
EMEA
$3,919 $2,572 
Americas
2,088 7,244 
APAC
1,536 7,257 
Total revenues$7,543 $17,073 
Contract with Customer
The following table presents balances of contract assets, unbilled receivables, and contract liabilities (in thousands):
March 31, 2025December 31, 2024
Contract assets$1,788 $4,375 
Unbilled receivables$3,849 $3,208 
Contract liabilities: deferred revenue$928 $450 
We recognized the following revenues (in thousands):
Three Months Ended March 31,
Revenue recognized in the period for:20252024
Amounts included in contract liabilities at the beginning of the period:
Performance obligations satisfied$250 $371 
Changes in the period:
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods387 189 
Performance obligations satisfied from new activities in the period - contract revenue6,906 16,513 
Total revenues$7,543 $17,073 
Performance Obligation, Expected Timing of Satisfaction
The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of March 31, 2025.
The balances in the table below are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts as of March 31, 2025 (in thousands):
Remainder of 2025
20262027
2028 and Thereafter
Total
Product revenue$428 $140 $40 $320 $928 
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.25.1
Net Loss per Share (Tables)
3 Months Ended
Mar. 31, 2025
Earnings Per Share [Abstract]  
Schedule of Shares Not Included in Computation of Diluted Net Loss Per Share
The following shares were not considered in the computation of diluted net loss per share because their effect was anti-dilutive (in thousands):
 Three Months Ended March 31,
 20252024
Shares issuable under the Equity Incentive Plan and ESPP(1)
13,80013,105
Warrants(2)
424424
Total potentially dilutive securities14,22413,529
(1) Included 386,635 and 568,224 of anti-dilutive potential common shares from ESPP for the three months ended March 31, 2025 and 2024, respectively.
(2) Pertains to the warrants issued in connection with the Innovatus Loan. For additional information, see Note 11, “Debt.”
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.25.1
Investments in Non-Marketable Securities (Tables)
3 Months Ended
Mar. 31, 2025
Investments, Debt and Equity Securities [Abstract]  
Carrying Value of Non-marketable Equity Securities
The following table presents the carrying value of our non-marketable equity securities (in thousands):
 March 31, 2025December 31, 2024
seqWell$2,416 $2,416 
Other investments in non-marketable equity securities382 382 
Total non-marketable equity securities$2,798 $2,798 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.25.1
Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 2025
Fair Value Disclosures [Abstract]  
Fair Value, Assets Measured on Recurring Basis
The following tables show the Company’s cash, cash equivalents, and short-term investments by significant investment category as of March 31, 2025 and December 31, 2024 (in thousands):
March 31, 2025
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$4,391 $— $— $4,391 $4,391 $— 
Level 1:
Money market funds
6,209 — — 6,209 6,209 — 
Level 2(1):
Commercial paper15,123 (2)15,123 7,719 7,404 
Corporate debt11,244 (8)11,238 — 11,238 
U.S. agency securities1,995 — 1,996 — 1,996 
U.S. treasury securities20,805 19 — 20,824 — 20,824 
Subtotal49,167 24 (10)49,181 7,719 41,462 
Total$59,767 $24 $(10)$59,781 $18,319 $41,462 
December 31, 2024
Amortized CostUnrealized GainsUnrealized LossesFair ValueCash and Cash Equivalents
Short-term Investments
Cash$3,284 $— $— $3,284 $3,284 $— 
Level 1:
Money market funds
15,980 — — 15,980 15,980 — 
Level 2(1):
Commercial paper6,768 — 6,769 — 6,769 
Corporate debt17,187 (15)17,180 — 17,180 
U.S. agency securities1,989 — 1,991 — 1,991 
U.S. treasury securities28,198 56 — 28,254 — 28,254 
Subtotal54,142 67 (15)54,194 — 54,194 
Total$73,406 $67 $(15)$73,458 $19,264 $54,194 
(1) The valuation techniques used to measure the fair values of the Company’s Level 2 financial instruments uses inputs that are either directly or indirectly observable for the asset through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life.
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details (Tables)
3 Months Ended
Mar. 31, 2025
Balance Sheets Details [Abstract]  
Schedule of Inventory Components
Inventories consisted of the following (in thousands):
March 31, 2025December 31, 2024
Work in process$— $29 
Finished goods1,781 1,770 
Total inventories
$1,781 $1,799 
Schedule of Property and Equipment, Net
Property and equipment, net consisted of the following (in thousands):
March 31, 2025December 31, 2024
Laboratory equipment$36,198 $35,949 
Leasehold improvements14,256 12,159 
Computer equipment and software2,534 2,459 
Office equipment and furniture1,164 1,124 
Construction in progress3,223 3,441 
Property and equipment57,375 55,132 
Less: accumulated depreciation and amortization(41,572)(40,935)
Property and equipment, net$15,803 $14,197 
Depreciation expense included in both research and development expenses and selling, general and administrative expenses in the unaudited condensed consolidated statements of operations was as follows (in thousands):
Three Months Ended March 31,
20252024
Research and development$946 $1,032 
Selling, general and administrative212 220 
Total depreciation expense
$1,158 $1,252 
Schedule of Other Accrued Liabilities
Other accrued liabilities consisted of the following (in thousands):
March 31, 2025December 31, 2024
Accrued purchases $2,544 $2,908 
Accrued professional and outside service fees2,396 3,064 
Other177 251 
Total other accrued liabilities$5,117 $6,223 
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.25.1
Stock-based Compensation (Tables)
3 Months Ended
Mar. 31, 2025
Share-Based Payment Arrangement [Abstract]  
Schedule of Stock-based Compensation Expense
Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):
 Three Months Ended March 31,
 20252024
Cost of product revenue$61 $115 
Research and development 665 820 
Selling, general and administrative1,653 2,236 
Total$2,379 $3,171 
Schedule of Stock-based Compensation Expense by Security Types
The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations (in thousands):
 Three Months Ended March 31,
 20252024
Stock options$1,355 $1,514 
RSUs and RSAs919 1,317 
Performance-contingent restricted stock units (“PSUs”)— 247 
Performance based options (“PBOs”)— 16 
ESPP105 77 
Total$2,379 $3,171 
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies (Tables)
3 Months Ended
Mar. 31, 2025
Commitments and Contingencies Disclosure [Abstract]  
Lease Cost Lease costs amounts included in the measurement of lease obligations and other information related to non-cancellable operating leases were as follows (in thousands):
Three Months Ended March 31,
 20252024
Operating lease cost(1)
$1,243 $1,032 
(1) The Company had no variable lease costs.
Other information:Operating Leases
Weighted-average remaining lease term (in years)7.6 years
Weighted-average discount rate7.0 %
Three Months Ended March 31,
Cash paid (in thousands):
20252024
Operating cash flows from operating leases$1,208 $1,173 
Operating Lease Maturity
As of March 31, 2025, our maturity analysis of annual undiscounted cash flows of the non-cancellable operating leases are as follows (in thousands):
Years Ending December 31,Operating Leases
2025 (remaining 9 months)$3,660 
20265,014 
20274,053 
20285,400 
20295,365 
Thereafter15,695 
Total minimum lease payments39,187 
Less: imputed interest8,876 
Lease obligations$30,311 
Reconciliation of operating lease liabilities as shown within the unaudited condensed consolidated balance sheets (in thousands):
Current portion of lease obligations - Operating leases$2,913 
Long-term lease obligations - Operating leases27,398 
Total operating lease liabilities$30,311 
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.25.1
Debt (Tables)
3 Months Ended
Mar. 31, 2025
Debt Disclosure [Abstract]  
Schedule of Long-Term Debt Instruments
The Company accounts for the amortization of the debt discount and issuance costs utilizing the effective interest method. Long-term debt consisted of the following at March 31, 2025 (in thousands):
March 31, 2025
Face value of debt$30,000 
Add: payment in-kind interest634 
Add: amortized exit fee166 
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
Schedule of Maturities of Long-Term Debt
The future principal payments under the Innovatus Loan are as follows (in thousands):
Years Ending December 31,
2025$— 
2026— 
202713,264 
202815,917 
20292,653 
Total principal payments31,834 
Add: amortized exit fee166 
Less: uncapitalized payment in-kind interest(1,200)
Less: unamortized debt issuance cost(523)
Less: unamortized debt discount(1,091)
Total long-term debt$29,186 
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.25.1
Segment, Geographical and Other Revenue Information (Tables)
3 Months Ended
Mar. 31, 2025
Segment Reporting [Abstract]  
Schedule of Customers that Contributed 10% or More of Total Accounts Receivable
Significant Customers
Customers that each accounted for 10% or more of our total revenues were as follows:
Percentage of Total Revenues for the
Three Months Ended March 31,
20252024
Customer A34 %*
Customer B17 %10 %
Customer C15 %15 %
Customer D*35 %
* Percentage was less than 10%
Customers that each accounted for 10% or more of accounts receivable balances as of the periods presented as follows:
Percentage of Accounts Receivables as of
March 31, 2025December 31, 2024
Customer C39 %16 %
Customer E36 %18 %
Customer F*12 %
Customer G*10 %
* Percentage was less than 10%
Schedule of Long-Lived Assets by Geographical Area
Identifiable long-lived assets by location was as follows (in thousands):
March 31, 2025December 31, 2024
United States$43,952 $43,098 
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.25.1
Description of Business (Details)
3 Months Ended
Mar. 31, 2025
segment
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
Number of reportable segments 1
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Disaggregation of Revenue [Line Items]    
Total revenues $ 7,543 $ 17,073
EMEA    
Disaggregation of Revenue [Line Items]    
Total revenues 3,919 2,572
Americas    
Disaggregation of Revenue [Line Items]    
Total revenues 2,088 7,244
APAC    
Disaggregation of Revenue [Line Items]    
Total revenues $ 1,536 $ 7,257
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition - Contracts with Customer (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Revenue from Contract with Customer [Abstract]    
Contract assets $ 1,788 $ 4,375
Unbilled receivables 3,849 3,208
Contract liabilities: deferred revenue $ 928 $ 450
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition - Narrative (Details) - USD ($)
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Dec. 31, 2024
Disaggregation of Revenue [Line Items]      
Impairment charges related to contract assets $ 0 $ 0  
Short-Term Unbilled Receivables      
Disaggregation of Revenue [Line Items]      
Unbilled receivables, not billable 3,400,000   $ 2,800,000
Long-Term Unbilled Receivables      
Disaggregation of Revenue [Line Items]      
Unbilled receivables, not billable $ 400,000   $ 500,000
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition - Revenue Recognized During Period (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Amounts included in contract liabilities at the beginning of the period:    
Performance obligations satisfied $ 250 $ 371
Changes in the period:    
Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods 387 189
Performance obligations satisfied from new activities in the period - contract revenue 6,906 16,513
Total revenues $ 7,543 $ 17,073
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.25.1
Revenue Recognition - Performance Obligation (Details) - Product revenue
$ in Thousands
Mar. 31, 2025
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Performance obligation $ 928
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-04-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Performance obligation $ 428
Expected timing of satisfaction, period 9 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Performance obligation $ 140
Expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2027-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Performance obligation $ 40
Expected timing of satisfaction, period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2028-01-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Performance obligation $ 320
Expected timing of satisfaction, period 1 year
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.25.1
Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details) - shares
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]    
Total shares excluded as anti-dilutive (in shares) 14,224,000 13,529,000
Shares issuable under the Equity Incentive Plan and ESPP    
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]    
Total shares excluded as anti-dilutive (in shares) 13,800,000 13,105,000
Warrants    
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]    
Total shares excluded as anti-dilutive (in shares) 424,000 424,000
ESPP    
Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]    
Total shares excluded as anti-dilutive (in shares) 386,635 568,224,000
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.25.1
Investments in Non-Marketable Securities - Narrative (Details) - USD ($)
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Investments, Debt and Equity Securities [Abstract]    
Unrealized or realized gains or losses $ 0 $ 0
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.25.1
Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Marketable Securities [Line Items]    
Total non-marketable equity securities $ 2,798 $ 2,798
seqWell    
Marketable Securities [Line Items]    
Total non-marketable equity securities 2,416 2,416
Other investments in non-marketable equity securities    
Marketable Securities [Line Items]    
Total non-marketable equity securities $ 382 $ 382
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.25.1
Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Mar. 31, 2024
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Cash $ 4,391 $ 3,284  
Unrealized Gains 24 67  
Unrealized Losses (10) (15)  
Total 59,767 73,406  
Total 59,781 73,458 $ 85,500
Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Cash 4,391 3,284  
Total 18,319 19,264  
Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Cash 0 0  
Total 41,462 54,194  
Fair Value, Inputs, Level 1 | Money market funds      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 6,209 15,980  
Unrealized Gains 0 0  
Unrealized Losses 0 0  
Fair Value 6,209 15,980  
Fair Value, Inputs, Level 1 | Money market funds | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 6,209 15,980  
Fair Value, Inputs, Level 1 | Money market funds | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 0 0  
Fair Value, Inputs, Level 2      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 49,167 54,142  
Unrealized Gains 24 67  
Unrealized Losses (10) (15)  
Fair Value 49,181 54,194  
Fair Value, Inputs, Level 2 | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 7,719 0  
Fair Value, Inputs, Level 2 | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 41,462 54,194  
Fair Value, Inputs, Level 2 | Commercial paper      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 15,123 6,768  
Unrealized Gains 2 1  
Unrealized Losses (2) 0  
Fair Value 15,123 6,769  
Fair Value, Inputs, Level 2 | Commercial paper | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 7,719 0  
Fair Value, Inputs, Level 2 | Commercial paper | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 7,404 6,769  
Fair Value, Inputs, Level 2 | Corporate debt      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 11,244 17,187  
Unrealized Gains 2 8  
Unrealized Losses (8) (15)  
Fair Value 11,238 17,180  
Fair Value, Inputs, Level 2 | Corporate debt | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 0 0  
Fair Value, Inputs, Level 2 | Corporate debt | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 11,238 17,180  
Fair Value, Inputs, Level 2 | U.S. agency securities      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 1,995 1,989  
Unrealized Gains 1 2  
Unrealized Losses 0 0  
Fair Value 1,996 1,991  
Fair Value, Inputs, Level 2 | U.S. agency securities | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 0 0  
Fair Value, Inputs, Level 2 | U.S. agency securities | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 1,996 1,991  
Fair Value, Inputs, Level 2 | U.S. treasury securities      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Amortized Cost 20,805 28,198  
Unrealized Gains 19 56  
Unrealized Losses 0 0  
Fair Value 20,824 28,254  
Fair Value, Inputs, Level 2 | U.S. treasury securities | Cash and Cash Equivalents      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value 0 0  
Fair Value, Inputs, Level 2 | U.S. treasury securities | Short-term Investments      
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]      
Fair Value $ 20,824 $ 28,254  
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.25.1
Fair Value Measurements - Narrative (Details) - Convertible Debt - USD ($)
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Credit losses $ 0 $ 0
Other-than-temporary impairment losses $ 0 $ 0
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details - Inventories (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Schedule of Inventory Components    
Work in process $ 0 $ 29
Finished goods 1,781 1,770
Total inventories $ 1,781 $ 1,799
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details - Narrative (Details) - USD ($)
$ in Millions
Mar. 31, 2025
Dec. 31, 2024
Balance Sheets Details [Abstract]    
Prepaid expense, current $ 3.7 $ 3.7
Other assets, current $ 0.5 $ 0.5
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details - Property and Equipment, net (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Dec. 31, 2024
Property, Plant and Equipment [Line Items]      
Property and equipment $ 57,375   $ 55,132
Less: accumulated depreciation and amortization (41,572)   (40,935)
Property and equipment, net 15,803   14,197
Total depreciation expense 1,158 $ 1,252  
Research and development      
Property, Plant and Equipment [Line Items]      
Total depreciation expense 946 1,032  
Selling, general and administrative      
Property, Plant and Equipment [Line Items]      
Total depreciation expense 212 $ 220  
Laboratory equipment      
Property, Plant and Equipment [Line Items]      
Property and equipment 36,198   35,949
Leasehold improvements      
Property, Plant and Equipment [Line Items]      
Property and equipment 14,256   12,159
Computer equipment and software      
Property, Plant and Equipment [Line Items]      
Property and equipment 2,534   2,459
Office equipment and furniture      
Property, Plant and Equipment [Line Items]      
Property and equipment 1,164   1,124
Construction in progress      
Property, Plant and Equipment [Line Items]      
Property and equipment $ 3,223   $ 3,441
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.25.1
Balance Sheet Details - Other Accrued Liabilities (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Balance Sheets Details [Abstract]    
Accrued purchases $ 2,544 $ 2,908
Accrued professional and outside service fees 2,396 3,064
Other 177 251
Total other accrued liabilities $ 5,117 $ 6,223
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.25.1
Stock-based Compensation - Narrative (Details) - USD ($)
1 Months Ended 3 Months Ended
Apr. 30, 2023
Mar. 31, 2025
Mar. 31, 2024
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Share-based compensation arrangement by share-based payment award, shares issued in period (in shares)   0 0
ESPP      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Share-based compensation arrangement by share-based payment award, consecutive offering period 24 months    
Purchase price of common stock 85.00%    
Share-based compensation arrangement by share-based payment award, maximum employee subscription amount $ 25,000    
Number of shares authorized (in shares) 2,000,000    
Shares reserved for future issuance (in shares)   1,736,843  
Share-based payment arrangement, expense   $ 100,000 $ 100,000
Share-based payment arrangement, nonvested award, cost not yet recognized, amount   400,000  
Stock options      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Compensation not yet recognized, stock options   12,300,000  
RSUs and RSAs      
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]      
Compensation not yet recognized, share-based awards other than options   $ 5,600,000  
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.25.1
Stock-based Compensation - Stock-based Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation $ 2,379 $ 3,171
Stock options    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 1,355 1,514
RSUs and RSAs    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 919 1,317
Performance-contingent restricted stock units (“PSUs”)    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 0 247
Performance based options (“PBOs”)    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 0 16
ESPP    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 105 77
Cost of product revenue    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 61 115
Research and development    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation 665 820
Selling, general and administrative    
Share-based Payment Arrangement, Expensed and Capitalized, Amount [Line Items]    
Stock-based compensation $ 1,653 $ 2,236
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.25.1
Capital Stock (Details)
$ / shares in Units, $ in Millions
1 Months Ended 3 Months Ended 12 Months Ended
May 02, 2024
USD ($)
May 31, 2021
USD ($)
Mar. 31, 2025
USD ($)
$ / shares
shares
Mar. 31, 2024
USD ($)
$ / shares
shares
Dec. 31, 2024
USD ($)
shares
Feb. 27, 2023
USD ($)
Class of Stock [Line Items]            
Issuance of common stock upon exercise of stock options (in shares) | shares     339,142 72,856    
Weighted average exercise price of stock options exercised (in dollars per share) | $ / shares     $ 3.09 $ 1.97    
Net proceeds from stock options exercised     $ 1.0 $ 0.1    
Sale of stock, securities registered aggregate amount           $ 200.0
Issuance of common stock, net of issuance costs (in shares) | shares     0      
Cantor Sales Agreement            
Class of Stock [Line Items]            
Net proceeds received $ 75.0          
Gross sales commission proceeds, percentage 0.030          
Piper Sandler & Co            
Class of Stock [Line Items]            
Sale of stock, period   3 years        
Piper Sandler & Co | Maximum            
Class of Stock [Line Items]            
Sale of stock, value of shares for issuance   $ 50.0        
Cantor            
Class of Stock [Line Items]            
Sale of stock, value of shares for issuance       $ 43.7    
Issuance of common stock, net of issuance costs (in shares) | shares     0   10,440,000  
Net proceeds received         $ 29.7  
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies - Lease Cost (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Lease, Cost [Abstract]    
Operating lease, cost $ 1,243 $ 1,032
Variable lease, cost $ 0 $ 0
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies - Other Lease Information (Details)
Mar. 31, 2025
Commitments and Contingencies Disclosure [Abstract]  
Weighted-average remaining lease term (in years) 7 years 7 months 6 days
Weighted-average discount rate 7.00%
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies - Cash Paid for Lease Obligations (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Commitments and Contingencies Disclosure [Abstract]    
Operating cash flows from operating leases $ 1,208 $ 1,173
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies - Maturity Analysis of Operating Lease (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
Operating Leases    
2025 (remaining 9 months) $ 3,660  
2026 5,014  
2027 4,053  
2028 5,400  
2029 5,365  
Thereafter 15,695  
Total minimum lease payments 39,187  
Less: imputed interest 8,876  
Lease obligations 30,311  
Current portion of lease obligations - Operating leases 2,913 $ 2,827
Long-term lease obligations - Operating leases $ 27,398 $ 28,163
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.25.1
Commitments and Contingencies - Narrative (Details) - USD ($)
Dec. 31, 2024
Mar. 31, 2024
Indemnification Agreement    
Schedule of Commitments and Contingencies [Line Items]    
Loss contingency accrual $ 0 $ 0
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.25.1
Debt - Narrative (Details)
$ / shares in Units, $ in Thousands
3 Months Ended
Feb. 13, 2024
USD ($)
tranche
$ / shares
shares
Mar. 31, 2025
USD ($)
Mar. 31, 2024
USD ($)
Debt Instrument [Line Items]      
Face value of debt   $ 30,000  
Debt instrument, unamortized discount   1,091  
Unamortized debt issuance expense   523  
Class of warrant or right, fair value   900  
Secured Debt | Innovatus Loan Warrants      
Debt Instrument [Line Items]      
Class of warrant or right, number of securities called by warrants or rights (in shares) | shares 424,028    
Class of warrant or right, exercise price of warrants or rights (in dollars per share) | $ / shares $ 2.83    
Class of warrant or right, warrant term 10 years    
Innovatus Loan      
Debt Instrument [Line Items]      
Investment, Variable Interest Rate, Type [Extensible Enumeration] Prime Rate [Member]    
Innovatus Loan | Secured Debt      
Debt Instrument [Line Items]      
Debt instrument, term 5 years    
Face value of debt $ 40,000    
Debt instrument, number of tranches | tranche 2    
Interest rate, stated percentage 7.50%    
Basis spread on variable rate 3.25%    
Debt instrument, interest, paid in kind 0.020    
Debt instrument, interest payable, term 3 years    
Prepayment, aggregate principal amount, percentage 0.030    
Debt instrument, unamortized discount     $ 1,300
Unamortized debt issuance expense     600
Interest expense, debt   $ 900 $ 500
Debt instrument, interest rate, effective percentage   13.10%  
Innovatus Loan | Secured Debt | Maximum      
Debt Instrument [Line Items]      
Early repayment fee, percentage 0.030    
Innovatus Loan | Secured Debt | Minimum      
Debt Instrument [Line Items]      
Early repayment fee, percentage 0.010    
Innovatus Loan - First Tranche | Secured Debt      
Debt Instrument [Line Items]      
Face value of debt $ 30,000    
Innovatus Loan - Second Tranche | Secured Debt      
Debt Instrument [Line Items]      
Face value of debt $ 10,000    
Term Loan | Secured Debt      
Debt Instrument [Line Items]      
Debt instrument, facility fee, percent 1.00%    
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.25.1
Debt - Schedule of Long-Term Debt Instruments (Details)
$ in Thousands
Mar. 31, 2025
USD ($)
Debt Disclosure [Abstract]  
Face value of debt $ 30,000
Add: payment in-kind interest 634
Add: amortized exit fee 166
Less: unamortized debt issuance cost (523)
Less: unamortized debt discount (1,091)
Total long-term debt $ 29,186
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.25.1
Debt - Schedule of Maturities of Long-Term Debt (Details)
$ in Thousands
Mar. 31, 2025
USD ($)
Debt Disclosure [Abstract]  
2025 $ 0
2026 0
2027 13,264
2028 15,917
2029 2,653
Total principal payments 31,834
Add: amortized exit fee 166
Less: uncapitalized payment in-kind interest (1,200)
Less: unamortized debt issuance cost (523)
Less: unamortized debt discount (1,091)
Total long-term debt $ 29,186
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.25.1
Segment, Geographical and Other Revenue Information - Narrative (Details)
3 Months Ended
Mar. 31, 2025
segment
Segment Reporting [Abstract]  
Number of reportable segments 1
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.25.1
Segment, Geographical and Other Revenue Information - Concentration Risk (Details) - Customer Concentration Risk
3 Months Ended 12 Months Ended
Mar. 31, 2025
Mar. 31, 2024
Dec. 31, 2024
Revenue | Customer A      
Concentration Risk [Line Items]      
Concentration risk, percentage 34.00%    
Revenue | Customer B      
Concentration Risk [Line Items]      
Concentration risk, percentage 17.00% 10.00%  
Revenue | Customer C      
Concentration Risk [Line Items]      
Concentration risk, percentage 15.00% 15.00%  
Revenue | Customer D      
Concentration Risk [Line Items]      
Concentration risk, percentage   35.00%  
Accounts Receivable | Customer C      
Concentration Risk [Line Items]      
Concentration risk, percentage 39.00%   16.00%
Accounts Receivable | Customer E      
Concentration Risk [Line Items]      
Concentration risk, percentage 36.00%   18.00%
Accounts Receivable | Customer F      
Concentration Risk [Line Items]      
Concentration risk, percentage     12.00%
Accounts Receivable | Customer G      
Concentration Risk [Line Items]      
Concentration risk, percentage     10.00%
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.25.1
Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) - USD ($)
$ in Thousands
Mar. 31, 2025
Dec. 31, 2024
United States    
Geographic Areas, Long-Lived Assets [Abstract]    
Long-lived assets $ 43,952 $ 43,098
EXCEL 73 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( "2"KEI&QTU(E0 ,T 0 9&]C4')O<',O87!P+GAM M;$W/30O", P&X+]2=K>9BAZD#D0]BIZ\SRYUA;8I;83Z[^T$/VYY><@;HBZ) M(B:VF$7Q+N1M,S+'#4#6(_H^R\JABJ'D>ZXQW8&,L1H/I!\> \.B;=> A3$, M.,SBM[#IU"Y&9W7/ED)WLCI1)L/B6#0ZL2B4^BQ-+.9$SRE$3&0Q7_6N]5GHN&9[HB@ MLMZC4[D<$GYH;D-RBH9GVD%4^D/M$&K.;\ A*:-(P0@LXDQDLC%:Z(2*0CKB MC9[Q\3.U$\QHP!8=>LI0E14P.4Z,A[YMX P8883)Y>\"FIDX5?_%3AU@QV2? M[9SJNJ[L%E-NV*&"MZ?'EVG=POI,RFL+PN^ M+*KK3F/'M#^.3H&S@SUW(+U!+ P04 " D M@JY:F5R<(Q & "<)P $P 'AL+W1H96UE+W1H96UE,2YX;6SM6EMSVC@4 M?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)- MNIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X8-DOV]:[MR_>X%#BVR]*+41B1%G\@MNN01.+5)#3(3/PB=AIAJ4!P"I DQ MEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7H5A)VH3X$$8:XIQSYG/1;/L'I4;1 M]E6\W*.76!4!EQC?-*HU+,76>)7 \:V@S&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++ M9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0'HYI9";V$5FJ?JH,@H%\;D> M/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y?RY]SZ7ON?0]H=*W-R-]9\'3BUO> M1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA*]+',<$X>RPP[9SR2';9WH!TU^_9= M=N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D*TU*0;\/YZ<5X&N(YV02Y?9A7;>?8 MT='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-#AWE[7YAGE<90-!1M;*PD+$:W8+C7 M\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B?$R,1>APYY=<7^/1DN/;IF6U;J\I M=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*POFH]M!5.S_Y9KF4Q9Z;R MWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=WP6#R_7#)1P_E.^=?]%U#KG[VW>/Z M;I,[2$R<><41 71% B.5' 86%S+D4.Z2D 83 > MLX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[ MM'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+!WP?D@9CC%OT-%^/%&*MIK&MQMHQ M#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'50.4_V]0-:/8--!R1!5XQF;8VH^1. M"CS<_N\-L,+$CN'MB[\!4$L#!!0 ( "2"KEH]N'1CS 4 ,0> 8 M>&PO=V]R:W-H965T&ULM9EK<^(V%(;_BH9V.NU,")9, J0) M,\1)MIGN9MF07K:=?A"V ,_:EBO)$/Y]CVRPDU06C"?^DOAV7O3HZ/)*NMQP M\4VN&%/H.8X2>=59*95>]'K27[&8RE.>L@3>++B(J8);L>S)5# :Y$%QU".. M<]Z+:9ATQI?YLZD87_),16'"I@+)+(ZIV%ZSB&^N.KBS?_ 8+E=*/^B-+U.Z M9#.F?DNG NYZI4H0QBR1(4^08(NKS@1?>"[1 ?D7OX=L(U]<(XTRY_R;OKD/ MKCJ.+A&+F*^T!(5_:^:Q*-)*4(Y_=Z*=\C=UX,OKO?I=#@\PN2;7]@.Z$SK^3R2^5^T*;[M]SO(SZ3B\2X82A"'2?&?/N\J MXF4 J0D@NP#R)@"[-0'N+L#-08N2Y5@W5-'QI> ;)/37H*8O\KK)HX$F3'0: M9TK VQ#BU-CC:R;0%#*&NDBNJ&#RLJ= 6+_N^3N1ZT*$U(BXZ!-/U$JBVR1@ MP>OX'A2H+!79E^J:6 4_47&*7'R"B$/.#.7Q#H5OD3,R1;\JC5O6D9O+N=8Z M^GLRETI L_O'5$&%0M^LH/OBA4RISZXZT-DD$VO6&?_P'3YW?C;1O9/8*]A^ M"=NWJ8]ON)]!-U7H:9LR$ZD]'#O=+R8D:U1#I+,2Z>PXI"\9%8J):(L>6.?'X4V9"'F@.R&"L<"8/+M2V>UJ^YTUOB'GH.0< M'-DR!85I))\%ZO-HUUK02!H3:0UK"#@L 8?60MTF*E1;=!=&##UD\9P)$YA= MPW%PU^T/'&/VK*$-X48EW.@8N$>V#/4P"FE\H+&QC=IU/!ZPYU">% 6[3_Q3 M$ZE5HR$I=JHYU3F&%0K'!;1/JIOJ"9HIZ)2("^3Q+%%BBS2*<;*UJ]_<,0GO"Y]+E"-P+LK1'"K\/$-^?9KNE- MC*!M."1<621L-S9O0:=<*AJAO\*T?IBR*X[ZSKEK)&W#+.'*+6&[R(U88WPI4YPG9'\Y'[D*_IBBCV.8EV:*^]].4$H%6M,H8^A[Y]0! M^X126.SE*V%C+;3AH7!EHK#=_8#U#<)DB6;;>,XC(_P!^W3SY\S(U89C(I5C M(G9/LT\GNGWV5S19LEIW>$#H83*[F1A7H/; IH2502)'&20O$T*O88J%2YY* MF%(RXZ;+ <6OQJT:SQ[5E+,R1N0H8W2?P$*[V*/3BU&Z!S=RVA7K.-OP0:3R M0>0H'Z07:^#HP14LN3".1@=T'GC2I;[/0 9$@D+0R-N&$R*5$R)'.:%93*,( M76<27DMSJ[7KU.V@V,.:XE7^AQSE?VYC)I:Z5WX !;4R\MF%:G<6['%- 2O; M0^RN99^_%8/\P128TL3<7.TR]7AMV!]2V1]B=R[[X?75W#[+][/1YTR!F4WT MQ&DD?B=CLZN'0NTL5].'*.OQD S[_6$?EK%K$V-E@#*,"O-Y]$K!G M]"LSI_'0-IWI#LR[ZVV8'%*9'&+W*).8)4&^TW<747/*[ +UC;0-E^-6 M+L<]L'.SW\&\"Z5VZU\9F,\[>&@<2 ^(U6W1VL.:,E8^Q[6[DK>,NTWI>DJ[ MW!=L9&S#X[B5QW'MCF1OXEZFT;;K?D"NV\6DZYI!W]7D]%Z<$^J)+C\^E0'D[WJ\^)\]Q/5\Z1$$5M J',Z@ %/%$>FQ8WB:7[J..=* M\3B_7#$:,*$_@/<+SM7^1O] >7 ]_@]02P,$% @ )(*N6CA 4,*X6N+T-FNWM9T:B8Z&2Z*7HI-U??T/)D6QQQ.0.^9)(T9!Z M9CBWDKS=?=C8:[U3!+4=:R:4O5$"TWEXN/]/PJY'9 9_&? M4CZV1]?$NG*GU#=[\[FX7 06D:QD;NP4 GX]R"M9578FP/'78=+%\$X[\/CZ M:?:?.^?!F3O1RBM5_5D69GNY2!>DD!NQK\P7]?BK/#@4V?ER5;7=3_)XL T6 M)-^W1M6'P8"@+IO^M_A^",31 !K.#&"' >RE _AA0!>Y58^L<^M:&+&^T.J1 M:&L-L]F++C;=:/"F;.PRWAH-3TL89]97JBE@461!X*I555D( S>?1"6:7)); M.W%+WGYMQ+XHXD3>D;,@?6[5O15.T%RL#>.RLJ_SP[D_] MN]G,NW\3^CWA=$E8P")D^)5_^+7,A^'AZ? 51&$(!1M"P;KY^%PH]EK+QA#1 MMN#S.>9//T&(3V!WW'F[$[F\7,"6:J5^D(OU3_^@A:12'-9N(8#R!C;V[_7#:PGTM1^;([?LWL M?J7)3KQ-!F\3[Y)\S'.UAT4 GLDE9/9=)3%_$R?2<1A.E\,UHI#7 ;XL M3H&-=,7\=/5[5Z]L[CY?#IC+2%D\90+$B 9TIMBRHT;M);3EP880$ ,&4KS7;J]$B!S$^!@^K>B1]S MDINY'!8?ZZR#(ZX52_E,C6,CTS$_TP% O;?\H6I+TL*>(Z$@70J+N9L\KA6% M\C!3R]A(=,Q/=/TF% >L1QF$0G7)+*+4@>I:Q8S-E8N1\IB?\IZR? <-L#V2 M4YN>)HBZJ\K[+KP8B:!^(*R64:?L(58IFZO'(_'K*A'1J<_J!C\3'G^G35'/?'^'\OPG,7:9C"7?4&V:6 MTCGFYB,CK:]JU1AG?QIS MI$L#"IB"Q:SBN20>B8S[B:S?<,\A=#DJR5CD++AKEK)@KA?F(Y=Q/Y==J;HN M^Z/&3O3:$R7(4 E]/#2?;_^MC"0T>(Z.?JFMK_5^2-\'[( @H""Y- M'D2UEP0J%6FW0LL/)%K"L_X&4F1OMDJ7?\MB:?6])&7;6GG1G5+L36O@ M(' M#:%+NDY1]IF<.CN2,G_NB+2N05.\Q%,6!+BO'TC*EFE(AR?@;4J7:338XF& MUL)RUF]"Y]M^_9Z^4G66US*7]9W4)X_")7!>NY/=9\GJ!QI)5QXXY<)G ,E86CA C] M$@)4^K[>5]UGR,,!&NAU+;?VV_$#9&X#]ZA&"Q%MX'P #P<+?[7@P>^2")'0)@=M@AP.KH([O]#P>H#O&PO=V]R:W-H965T&ULK59=;]HP%/TK5C9-K=01)Q ^.HC44DW;PR14U.UAVH-)#+'J MV)GM0+=?O^LDS4@)7]UX '_<%>[9*C%UPPW%&5G1.S4,V4S!S:Y:8I51H)@52=#EQ;KSK MJ83?6&R2B3-T4$R7).?F7FX^TH[?(13J!53UV#6BRS&Y4G7];GN_O.?\+41W4 M]:Z0C_V@!3X]#+^C40WO->$N9*).AU^GPR_XNGOXY@;L0Y4:))?H(Q.0!$8X MFDG-BJK[?K/01D'M_6BS6G+WVKGMA;S6&8GHQ($;IZE:4R=\]\;KXP]MQO\3 M62,-W3H-W4/LX0SN$E4*"@$*,'J\0AE1:$UX3M$%$RB6G!.E4495^> OV[)1 M'C$HCK#_)NL0=S#&WMA=;_L\&M9PT*L=],YS4!8H(KE)I&*_8<,Z*5=;Y9?\ MP9:N !>?%_J/QS4,!+6!X%4&F-;Y;OJ6P*]8;!?O(?_OC[Q^0_@C)*O MZ$_PT!;9;L+=:@=L+P;OV!43&G&Z!"CN#(!#E>U-.3$R*SJ$A330;Q3#!%I" MJFP ["^E-,\3VW3436;X!U!+ P04 " D@JY:&I46RP0% "X%0 & M 'AL+W=OTZ[T%DWW7+S( M-6,*O69I+F?.6JG-Q'5EM&89E==\PW)XLN0BHPJ&8N7*C6 T+IRRU"6>-W0S MFN3.?%K^/XW5A$J $8\E<4OVE>VGH.BK50\JYP!09;DY3]]K2:BX0!QS ZD MJZ'PJ^!X);0W1]$4Q-X4WL$ERG<9')>!I GYJ MON!Y#$EA,8(KR=,DI@H&CPK^(%M*(KY$?VZ8H'K6);IXRNDV3L#F$GU&3X]? MT,6G2R375#")DAQ]7_.MI'DLK]"GD_'450!7O]2-*FBW)332 VV [GBNUA+] M"A#C4W\7:!ZYD@/76V(->$?%-1K@*T0\$ACP+-[O[EO@#(Y3/RCB#7KB/; = MR[=,3DQ34[KZ9E>]MB=R0R,V>K^8>)TIV E+_\C2MT6? M?^>*IK#@2ZXFJJ7_L/#7N\YN/@K\P=3=-2ETC?#(&]56)]B"([; FH$%EU#@ M4)V(EQ6>KQ![W>CU8,Y*<,ZLG"G8"?/AD?G0FA7-7*_LC>#Q-E*'_)@XEX&" MQLR3T8"TTM,U\L,@,&=G=,0XLF)\ -941.LB03$ 3/E&;TDFD*/.^S$9^VV4 M!BM,_*$99GB$&5IA/H($0>% M'<""%AD5Q>N\_S/Q_'#8@FFRPS@,PQZ@#3G%5J#?U86KA42 M6Z6I3/LS@VZ551.*%'TUUV<5JI7ZX6C4AFJPP]@?]^Q6N!8Z;%>Z>\%W2='> M MZWX?J&S:@-U6#3L_9QK7G8*BSS/^#;((5Y-8(*.C*KY["Q+"I@!CN, Z]O M#FM9PG9=.H!#L,K+KO)*=^E)A"Z@F8QYFE+1>'AI)%&^(FR"\ZY)>VLUF_76 M;*U:V"Y;)@IQDFYU6_T!$J/WD3":]9*H-0W;1>U'\?D#B.D.MML5 [7(,JAL M^!Z)7@[M_E9_-@ C>+;9%OJ16]-7NIGI=H4N)'ZCV"NZ7;/A. S\'KJU(&*[ M(IZ1;C/5-L)=H302[II9")-:3XE=3^_?[OOL$3[:[)XKVBG?6I8)_N_?6L0J MZ1]F>J9HITQKB2=VB7_[>ZL*T-R\AU[0;N0,5N,@Z&GD2*WHQ*[H?4V]M1+/ M^C%\KFBG$U!W"<3_'Y5H[3 ^S/1,T4Z9UHT&L3<:[ZC$;AN!_=!O5V+7:A00 MTJI$MW$&EC&Q*HX&)6S6VUR51T3'N^7QXRV>+(I3NM;]&SRY*0[CW#I,>:9Y M1\4JR25*V1)">MV*(Q=\-/ADBY@ F:ZO%V?PC<%&[XR)53*3\M%.;O.1%UA"P"$S%H'B9PUCX-P"(8U?-:;7 M'&D==\=;] ]..VJ940UCR;^SW!0C[](C.E3'8<=!\1I=XAJA^C0H?>"0[=VZ#JA%3,GZX8:F@Z5 MW!!EK1'-#EQLG#>J8<)F<6(4[C+T,^E8BAQS CG!D9:N@;9&C/ M\;.:S77%)GJ!39?<26$*3=XCJWS?WT=EC;QH*^\Z.@IX1]4%Z8;G) JBN(7/ M^/_=>T?H=)MH=QU>]P6\)JS/HWHK,ED"^7$UTT;AY?[9%KT*O=>.;A_\0"]I M!B,/@36H-7CIVS=A$KQKD_Y*8'N!Z#6!Z!U#3S]C?>)XC]I$5IZ)\[1%:)UV MHB"YO!SZZUWZ+69A& =Q8[9'+&Z(Q4&PO=V]R:W-H965T&ULO5I=;]LV%/TKA%=L#3#7(O7=.09:1\(*["-HVNUAV ,CT;%0 M271%.F[__4A9M2V19JR6W4LLV?>>2][#2^F><+ZCS0>V)H2#3U59L^O)FO/- MR]F,96M28?:";D@M?EG1IL)DI+OK"9Q\^>)M\;#F\HO98K[!#^2.\/>;VT;5&1FA6T!@U974]>P9O,FO)XX<$2E)QB4$ M%A^/9$G*4B*)<7SL0">'F-+Q]/H+>MI.7DSF'C.RI.7?1<[7UY-H G*RPMN2 MOZ6[7TDW(5_B9;1D[5^PZVR=" ,'+SCCX'<._C#"N4D'G4/0YGZ?K#;3-YCCQ;RA.]!( M:X$F+UJZ6F^1X**6*^N.-^+70OCQQ9+6N5@G) ?BBM&RR#$7-W=P*8"Y"92^ "W\&R$&NCE4COMP>7[(-SLCU1*2"D>:13!8__@ #YQ<= MUWLPOP636^/C(HACQW<<9SY[/*759M3$)EAJ":S'IGM@TQW)YB4,[C&#DZ1' M00#]?L:7JE4XX$2U\",/NE'?+%'-!N2FJL74BT/?/=KULN,=LN.UCNZ9[(@" M%(]@)I:X2$E[=27W+.T>]\];6I9 /,)VN,G_U67-L[GN;8+=V 1+;(*EEL!Z M[/L']GUC;;QA;-N6A'BL9?N'!I/,@^U&7))/I,D*UOZZ_YINY(.!G>Z'NF7@ M*SM6B"(_&!2/QLI5-S7C!,829Q,LM036(RXX$!=\#^)T9 7*Q@(]=T"5<3!C M2S%0>%<")C8#II; >D2%!Z+";R"J$3T%/N4)RZWUR?HRAAR[S88*'7X8J'5H M,V9B$RRU!-:C-SK0&WT=O8+'!LN&03"9T;KN6L==P=>BU;OGH.@\=?Q&"B61 M'P]*TCBNL25Y0<#$9L#4$EB/L_C 66SDK'VWF<;40K@B4Y.B9B)3$N M#.& "F.XL51<$C&Q&3&U!-;C CK'CMLQLO$'X: 4W9^V.7:49$PA])WA:[@Y MQ%@&K*(E5M'2IS/2I^%$^(!&&O;->=9KSL_2 C6#&+[=F>.-YL0F6G+)!%); M(?N$'#4(:!8ADCHW*!"_X^;0OWI:CJQ*$%#5($+']SWU-<%JW,0J6FH+K<_H M48> 9B%BP.A%++IJWF,4A,-:>UJ'T"#Y4>3"X9-%8ZVX;.JH1 MT-CNCI/>]"FSJD%T:+TW(QA)[4U9^%85!JMHJ2VT/JE'D0&:588G%3@]D;ZR MJ(,@1LK:5\VB(36JTA"@. B'3:?&SD?#I:_:3/T 14YP9ND?.WH8_(]*'+39 M02^MHMU814NLHJ6VT/J+X*@6P&^1"[Y:D(-JD^^Z,?30L)BT=IK-SJH:8!4M MM8769_ H","O5 3&*W-=I)XTYWA#(< \GM&UJ4H!:LS$:LS4%EJ?L:,< ,UZ MP'>1Z,PQ1^^_JBH0^$A3ES:C)E;14EMH_7_I'G4&9-89QJ@^2.VRD1L."\\< M<&SA710SL1HSM876I^2H.2"SYF"2?I"F14=.$$5#$JS*#%;1$JMHZ=,9Z=-P M;$[K&&"R:0V@K9)^0H%*!10H%!^O&U'!G1 M1Y\^47O]"$4>U!P_L1DWL8J6VD+K,WJ4-9!9UC!+/WH6/>7ESXM%VSJL-=5L MV/YJ3 +7A/)0IYOM0B$:E)"OAZ;P( MQ8)J]N<<]S><;MIS>?>4]H ]]LN*AS!9?B82%W@N:E6517"Q($R:+.63-;79I[MV)UR5M5L8;> M"B3;NL[%RV=:\:>K&9Z]WOC.'K9*WUBL+G?Y [VCZL?N5L#58J^E9#5M).,- M$G1S-;O&%^LHU@N,Q+\8?9('GY$VY9[SG_KBIKR:!1H1K6BAM(H<_CW2-:TJ MK0EP_-4KG>U_4R\\_/RJ_:LQ'HRYSR5=\^K?K%3;JUDV0R7=Y&VEOO.GWVAO MD %8\$J:O^BIEPUFJ&BEXG6_&!#4K.G^Y\^](PX6@![[ M(O(.,%D6-!V"\( MC:$=,F/6EUSEJTO!GY#0TJ!-?S"^,:O!&M;H;;Q3 KYEL$ZMUKPI85-HB>"3 MY!4K.-VDKT3T!3'J]?@$5[L\BK69^) M5^&W7'Q"(?X5D8#$%CSKTY=''CCAWLNAT1V"Q=RNNR_] 5G6AK3A4 MHH(W!:LH:GK$^J[^7.B@;W5F0&SS4S

PLRKP5W MBA<_YYJ-2E3P&BA:.MV<37Z>A.ERA'$J%.(4VT$N]R"77I"W@C\RP]X?=-(\ M4O'R$4$?@0I!@1!,[E"K5Y<3-)#(X0CR5"BPX\7!0&V!OP;Q9FZRF#6*0H8H M1)^U;ZF5H(*I8S,\ FD1RAS1BP\8&'MA7A\DEH[5DLFBB]L&R2U\-P?T-1CQ M2/O"9<6/IUX.PV!L@$4J<@0&)H,%Q&O!'Y!U C5[=T/K8,=(+!C'""TRV!4* M _]B/P&OMWGS0.6HE)LZ8(I;Q?)[5KG+.CXK,9]+V[$S!FK&?F[^RIH<."^O M/)6P5W%4YB*2C#=K*A7'KD*#!XK&7F9;W4"H-XH+9J\G_>HC%ADW#Q89$D4. M8 ,G8C\IW@JZRUGY6D>ZV.$F^CVNG))>."DL4YDYCA('WH$9L9\:KPM3223: MY2_Y?64O?%-"@VYL3-P6*6C:PLR!<& ^[*<^0"C:$>T=>K7_^B _K39,"6^> MQ,'$RQ:Q,$L='24>F!'[J;&K?Q6'FF)*]5MH+828QI-2;9%:+ATA0092)'Y2 M_$(W5 !C0^<+2=9:0X),:2Y*QQEF$9H35^Z3@0V)GPU_/Z7UMH*V4!N&UFB" MVR*7IMG2 7P@04*\%'-C^/F$$8%XR?2]7'(N;<=6#\1*O%RUNFU%L87&53T-RXU-A%7;@R\2/R\^.ILFM(IEP(+54X87.;'$DC%VV2@3;) M6[1YZ.\Z5ZU@X.?W&3%E2!*&DZII$7.%R\"BQ,^B^Y*TTR-0"67I_@5]Z.O3 MQQ[X"05J2J$8I\EX=K.(S4D6)XX9DPQ42S)O@>K;OA,*E)>RWUV@SJ3MV.J! MF\F;8^M![-%G*@KVFD%Z[ 9^T3V'?<>F%(R#*:%,I0XGQ^,#PX&G0S]/K[E4 M>EXI6L/60(0%;YK^\/N)J:TI49!%NGQ!(_H@*'4F3VCAZLD$;A-*',D3#GP> M^OG\V/^Z1^K2O:3WUMH:3NEYG.,6$;*,BM-6ECR7 K["FOXB ;M_P6*;)T1_; MON';1\,E+035;8..:S#CU\X8'=*/$,]-/Y;K0QO!"OU$0G]OM65*M/-E-#ZT MLTFE@:M;#0=&#OV,O#X9.\J5.9R\IP^L:?0>09CI&]!S,%Y:3;/,L$%&QH1A M$4N29)DZ;!M8._2S]OMMHWIN>],JRQGP,IM&WU0L7B;$,?^$ YF'J9<%[]K= MKC*5,J_,45O%92M, VA,V52@D37= U*HM?;'--Z&X=W/:&](G4O;L6<&TH_\I+_.=TP[Q9R3 ME0SZ?7K0R]RW"MRET MUQUQDX?@@';=S]^F"0N:M M=-9!_ES:CHT>&HK(WU 8HW7$C@N^U7)+ Y&%>,Q,%K$X"US'FM'!LV5_!_'] MF'Z I'1@0>>F\9M$[*ZMT"V#>9R,1V&K5.9HAJ.A78C\[<*?7&?%_]?P]#^1 MO,&?%C$;?RX.7AVIJ7@P;]1(9(Z-N][MW8^XXNU>;EE=/\:7UR;=U@6 M@YKN5:!ON8"61Z**;D!E\"D%9*)[NZ:[4'QG7E"YYTKQVGSN%_H'].TZK_P%02P,$% @ )(*N6BK/R 1Z @ Q@8 !@ !X;"]W M;W)K>%.[8NM5EPTZ2A:UB ?FCF$B.W9RE8!;5B MHB825E/GVK_*(I-O$WXRV*F].3&5+(5X-,'W8NIX1A!PR+5AH#AL80:<&R*4 M\;?C=/HC#7!__LQ^:VO'6I94P4SP7ZS0Y=29.*2 %=UP?2=VWZ"K)S9\N>#* M/LFNR_4X>:?DIE42O*+D!Y47)/2_D, +X@'X[&UX!GD/CP;@V?M//X"[:&GO M:]#[&EB^\!6^WL #_WY?+Y66>-O_##G4?U62]*B?I2HC=+N1>:\B'ET;&FR_'$ M/U!^G#4.HWARH/PX:Q(?*W?WFH;I\/@%K%FM"(<5XKR+<>P0V7;--M"BL7UD M*31V)3LM\4<#TB3@_DH(_1R8UM3_NM+_4$L#!!0 ( "2"KEJ6(-Y)5P, M %H' 8 >&PO=V]R:W-H965T&ULG551;]LV$/XK!Q7H M-D"P;#GIBL0V$#LIEH<@0;.M#\4>:.HD$:%(C4?927Y]CY2LN4,:M'VQR=/= M=]_=D1\7>^L>J$;T\-AH0\ND]KX]RS*2-3:")K9%PU]*ZQKA>>NJC%J'HHA! MC<[RZ?1=U@AEDM4BVN[<:F$[KY7!.P?4-8UP3VO4=K],9LG!\%%5M0^&;+5H M187WZ/]J[QSOLA&E4 T:4M: PW*97,S.UB?!/SK\K7!/1VL(E6RM?0B;ZV*9 M3 ,AU"A]0!#\M\,-:AV F,:_ V8RI@R!Q^L#^H=8.]>R%80;JS^IPM?+Y'T" M!9:BT_ZCW?^!0SVG 4]:3?$7]H/O- '9D;?-$,P,&F7Z?_$X].%[ O(A((^\ M^T21Y:7P8K5P=@\N>#-:6,128S234R8,Y=X[_JHXSJ\ND:13;>R0+6'=$3L0 M+3+/X,$EDP/0N@?*OP$TAQMK?$UP90HLOH[/F-3(+#\P6^>O MX(-X'Y+(5\ MFI^^@C9E N%YGU J)RZ0-N=P.D]7;-[-WT_-7 MRCL9RSMY#?U'!OE30'!MP-=,&XSU2.!MV$)G1%S\8-[C_RT=C98PK\%J.W>P\GU&%YEM;(&/ MBO-<&SF)WHJ'1]V65*&$4\P_3/UKIGRY%4W@$T*A2-H=NI3O]XYUJTT!33YJ>%,(<)RP0ZD%D0A=PFMXRXJ M0Z Y@Q.5,A5P*<'>,C_/ AFKN-I9S0Y,R;&.,4MD0Q>'XU'6QFI;/4&KA0]Y M)_ G-W;HZ"^' 6^W'4082 XD!);C4!8 MA;,R>>EJ9$=ZQX.HHJH3XW;&]](W6L>'XZ+7R__<^U>'5:;JQU!RZ'3R^VD" MKE?R?N-M&]5S:SUK<5S6_/BA"P[\O;0\R&$3$HS/Z>H+4$L#!!0 ( "2" MKEK=K>9*3@P "0D 9 >&PO=V]R:W-H965T9_GGDOI]=JZ>[]0*HB'NC+^S6 1PO+E\;$O%JJ6 M_L@NE<&3F76U#'CKYL=^Z90L>5-='9^.Q\^/:ZG-X.(U?W;G+E[;)E3:J#LG M?%/7TFVN5&77;P8G@_S!.SU?!/K@^.+U4L[51(4/RSN'=\>ME%+7RGAMC7!J M]F9P>?+RZIS6\X)_:+7VO=>"+)E:>T]O;LLW@S$II"I5!)(@\=]*7:NJ(D%0 MX]21O[K[/T[]EVV#*57EW;ZA==AL6;P;<#4:J9;*KPSJ[_II(]STA> M82O/?\4ZKGW^W4 4C0^V3INA0:U-_%\^)#_T-GP[/K#A-&TX9;WC0:SE6QGD MQ6MGU\+1:DBC%VPJ[X9RVE!0)L'AJ<:^<'$EO?;"SL2=4UZ9(*.O3"DF,4ST M;*+G1L]T(4T0ET5A&Q.TF8L[6^E"*__Z.$ 3DG= MW)A2E=O[CV%!:\9I-N/J]$F!/TEW),Y.AN)T?/KL"7EGK5O.6-[9 7E[K!3_ MNISZX)!&_]YG<)1WOE\>E=9+OY2%>C-8DJ/=2@TNOO[JY/GXU1/:GK?:GC\E M_4\+XI]_JC@LY,YI4^AEI?CQM34>>\KX_/U"H9X+6R^EV9"\QLBFU$&5HK!( M*>/CJ[0%;V;:2(B3E? X0P%6@A<+N5)BJI01",I2.JS3A@6[$JL5:C$LQ%P9 MY615;>B)6I(TV5FR[-3$W@#%/AA69$+GL.Z7M7+P@/CFZZ^^/3T=O_KKY>4= MOSQY]10-'K@U+RIV&061.LFJFB<#CJMN'DH%M+,%1Q4 MU]HS5N9S)C?7[3& ;^@7H$C=\X4V$=9IU[0)HK00:VS @Z)J2FA557QJ?R$= MBS58Z=2OC2:O33>"C.)3*"J5"FJORX\H=%ZUJGQ9W/S"-A5.A:O0A\COV/.Q M,1'H.6CLTD[T)P1V)F&?4\'2GH"6%C/"-DY<&M-@TSNUM"X('$--09R,1S^R MU73>1DDG%"&:>*L*54^5RYATSH8?,G(J*TZWV(9E>+P=J>ICII;PVXKL<+;^ M7"L#-N /+1D>CG>I?5%9WZ @A^D!)3K[9_BE,1>^!P3]\LE T/CHZUB),=-2 MRG]9DN2HA(532M2QW\3HH%L4B[9=Q76 '4=EX$, M3JZ[BAN)C4\Z[;B4]QJAEM(I!O9;@ M)[,9)7*,*N$(496Z]2SVJ !)E99373&'& HZ-&RH"E;*-,EIZF%)UF024K$Q M75\@8=0@40^4ZU$NK^V)/A*_J$1@J!)HD>?J]3VS$%>-&@")JF-^)A.2-E1W M%E!%=@YIV%*.*BX]I<+&BV =6[*25=.&)YK%"U(]#\76VNS"0%?="KJ4K:4DB;]W1 !&[3MGGO47LR74< MY%;](!^2SY"\16@87V(1%DQL2@TON-SB[9;#Z$C?P&=QD>*C*/A@0[3"4;:E MSO0967DD)@LDS @":E1>ZS4*8E%!6SW;,$(B3O.WT+68YZ4B:HD)GA3M"5W%^'P@&);3PL)C* M1B"]T&G: JH5JK^,(5K'!N$2(N[&9D\P=ET#M]E:_7&NF!Q(+T>:KK1:8W=D M5,2MT>^8=74]@X>I?HPC 0*OT8Y$P=D+8B^IX:"'15[8ZW*]"2.=";$@0-;Y MZ*;$H=4#SS@HGYA%]%E7 YD=IG)#)_41K1.@*B(6+G"4"PM/,C]'6$HJ_ B= ML9&VD61[,YE('2J+CVIWC:G=GO70X#O*;5G7SD]$_J(E!!8I-1:*,QZ.7.?+ M BBL #?WJMI$,X@<<]/J^VS=W2VD23<)WG4UULQ(8J1;A87AFZSN/N<<;5V M.6OPNDAI] X4W03B/Z5]?,.TM?36=',7YH:SZ)/O6]?U#ID$N(*8BKBRA,+Y M8NC[R\E5>S/$GBWW;_O $V>[[W+RH=WVLSWBXT?C[YBJHXS$>\) \'$^_LM+<5M#_552'8[L5HJWW3V#B(,$YCQ3;HW*.#'' =UPBO%41);/9(PO MH_"/)^>4@#R#V150HW^1P6B3$05(HN9,&O,QCJRD&,*%H'N1;O;ZU#;UC: 1 M$5^@,ID:RSDHQSSR@PW(.IH@:CS.$WS_D9PJUH1**ZWUQHX5N'T ME-9,[2KSL+0]%<[AW00O&[K0R^=@=R>1;W&&\<(13N59/0E_0B;UAQY+.*QY MXW)W^.0%V#""H(S9W=T-@7S@N*4E=&5?]Y\@Z U\^^Z+O7%+]VBK%L?.$XX! MFEI(ZG+]?#0^:V%FDF,^BIE,AU&J.[6@;PL1I[AP=!/I#B%-+D]*R3[P?#-I MIH'Q"@ W8LC:60V7[)XKDF"_ UM]U.(TS] ER]C-Y-;M:DR(1Z<5RM'5,W>. MG7&\O?#)3 J-O6W5"9;:BC@B%V=LMX4BF9'05'Q=&TM*NXL9$J&6L&14T' )=&+Y&BER&'(P#P'M"GSE& M#$Y;O.YD9-#+K9_>SZ VPD2"? ^?)8\[+2*>/./2>7XD;N+M1H8[R%\2$PY\ M*_=+PLH&?#7JRV&O9+ MNHSKJ/?E5GM^ISQXM5>9RJ5OF[C1].0E"L%?"P+EJT[<+=WKQ*O(I]J_3)>1 M#%PXBU>U1=+KS'3$LO\M8G^>C$0;W!9M/T2:1OGH^1:A/>TZ?S_54P6CS#RQ MA+Z\;D]V )Y8A+=?PCWMMC9[FAF;$-V8O^(3D]$_V8BMCWZ,,Z6)4,KD(GD[ M.FU/1?!5 %O 'J.RZVE+%:"Y1W=W+J8W _3CV#,I6OCH)K!G5NRP._9 G6US M$EGIE>&0%N'A#PW&Q[,Q%]:+H="SK Y_^47M@]51Y>-@L%-DOO'84Y+.+O14 M_W]K]7V[4RLWY]RE\#6A"_!%'^VG[$YC+^,N/;GG\_0QZ^ISFWTK- ML'5\].+90+CXFY3X!IG OP.9VA!LS2\72I;*T0(\GUET^O2&#FA_&'3Q7U!+ M P04 " D@JY:JE+<<7L& T$0 &0 'AL+W=OV,_NT)*3U^J4KN+7N'] M9M'ON[20E7 G9B,UOJR-K83'H\W[;F.ER()05?9'@\%IOQ)*]R[/P[M;>WEN M:E\J+6\MN;JJA'VXDJ6YO^@->^V+.Y47GE_T+\\W(I'U8\%\E[UWG-[$G*V,^\\-_LHO>@ ')4J:>-0CUDUJ.T=MY4C3 05$K'N_C2\- 1F ^>$1@U J. .QH**-\) M+R[/K;DGRZNAC7\$5X,TP"G-0?G@+;XJR/G+.[F5NI9T)U.3:\5,G?<]%//G M?MHHN8I*1L\H&=-[HWWAZ$9G,CN4[P/0#M6H174U>E'A>V%/:#Q,:#0835_0 M-]YY.0[ZQM_P/^_8P1$_9/C^KER%FXC M4GG10VDX:;>R=_G/?PQ/!_]Z ?UDAW[RDO;OC=&+2HY#/**9WBDG\MS*7(1' MLZ9VU2\%�EZECIG+Q8E9(VUFQ5)ATI'3M$*+45RI^RO2*9H8 [(4B;$+@8 M@[2)@:/5 ^4D36[%IE!P2^;0YTZ"Z?S)>_*%\"2L)-;V&5;";ZQ=0IM*A:/7 M'^$6/GSP0.$2NA9:9"(AH3/Z$6AUN_1-0C?O;Y;T^J:V:'D)O5=9!@=OA/-Q M^7+=K L/M\MK>KVL.65*!84_H0']*D6)CPE]@/^%A"0MG6JL71=*BS'R71\RB^F,_K%>&AJPN@@ M/$NFDS'NPUDRF(WW977%)*188"=5ZI3/=9HD)U(9G#]%4V2\6Q*'X_8 M#[3-)V?A/AK,]THZ4!8\$:2UG81_16>CH'DZH$^2"D$9:4."V#2I:B.4Q93S ME!;"YK!C91E2PQM:(V5TJL![ S0XRBG.N5#%7)#'$[CF$6X1U M?#+!0 :0*.8*8_U;+VUUW*TF\;E'N6<<1ROD^-1P0._"PX%\-3BT51J=OV J M=$7%H4O+FG.CTR*8 M/6$]1@_:9O=#DQL8.FU66+E!13/JAN_8EI]BS@Q!AJKD'!@+ZMM M@PTF#,KM00K+D%"TO ]H\A@?M^CK@2HN/>Q#;;,!]=ZJ51U9A.O6/(B2@YFP MEDX $6I1'E @OTB;*A?;SY/^SZZ1W&]>VGD<#*WXB!O4[*GC$R.8TO1[G>65 MC.6W->4V1JHAB8M@^0"*_EE;5PL= MUJ*503/:#PVK:%G/)EQI=Y:+<(,R;O&O:;M+]]M%/ MKB?L?883;@;A,AX-FBW1L9-1OW.2A>-Y.*\[@$? XZ%V]W;WE\ RGH3WR^/_ M"7 0V81^+=<0'9S,IKU(4?O@S2:&ULI5;;;ALW$/V5P08(;$#1926YJBT)L&,7-9 $@I4V#T4? MJ-V1EC67W)!&0TYVQCRY#]/"4*^UF4>9] M<=GKN23#7+BN*5#3RMK87'@:VDW/%19%&IQRU8O[_8M>+J2.YM,PM[#SJ2F] MDAH7%ER9Y\+N;U"9W2P:1,W$@]QDGB=Z\VDA-KA$_T>QL#3JM2BIS%$[:318 M7,^BZ\'ES8CM@\&?$G?NX!M8R(90=#/%C^B4@Q$-+[7 MF%&[)3L>?C?HOP7MI&4E''XTZIM,?3:+)A&DN!:E\@]F]SO6>L:,EQCEPG_8 M5;;#?@1)Z;S):V=BD$M=_8JG.@X'#I.7'.+:(0Z\JXT"RUOAQ7QJS0XL6Q,: M?P2IP9O(2^_>(3TLJ;DC=Q*\"?A:V"\-!!^)^/'X%;]B*' :\X0MX=\)J MJ3<.%HU(^.MZY;REFOC[E-X*;G0:CL_)I2M$@K.(#H)#N\5H_O[=X*)_]0K9 M44MV]!KZ3V;D#0PX H$@^48XF8"F%=6LN+ @'20F+TJ/*:SVD,JM3"E8K0C+K"LSQ%Z'E=.*H>)-'H$[@O-",V &%!$56 MWLJ$MZM,Q$[8U,'9^W>3..Y?/2RO7?@<7)U3MUC]0R<8O %J06N4OK38A5NI M M__(.?_2VFF?U#$C$\S[4"A2@="*1!I*KD3"=6B5G@^$YZ:5ZE22M06886H MCS<1CIHF:TA9-K4Q*(Q'[>4!UB'#3*05BB1'"@/Q 4.:[3. PZ2TQ ==%ZB_ M!8840VDH$:&J-86F4]D3 C'A[G>Z@$+44^:3$"$G=?(60?; IT25*;.S)@\9 M(>^D5(*#Q)IY3EK ]9K#NJ,)08@?&@E=N.;A;:-HV2J">]UJH1PVC#M':8>7 MTWX8^H)@+.>4?451*-(8[A.RYRE/5Z$K[;[6EZ//#,6M%N>>XZ#VIX)_(#[4 M;(N=GBKPP[JA!">B=!1YS5MQ=;@RR1H1!_4D]''@ZHAVX2MMNS:*+N;@73LB M86OC:3.Z>E,:I;3%3U,\YO9Z!N$L )O24;3=^241LHA'MPG074"BFLN _XVJ MKNA"<8N50BC)T@:&=]]+Z?>4_X2#3CLL5%"?PMURL8"SP3D,AIU)O\\_@_X8 MO@EKB1,UG_@<1H3-?U^-I[I]*W.#42CBYZ%P,QV'G M\<4D&%+$CM7_>$0J7:$D E\^MZ'(0ESR*BYX*BZ\$<>FP]VUP/#64?MND$6W MGJ?GF6NJ>-=HKKL#)8%RK>MWTD[Z+)C=:VVVPE/W^F2$KKO$9MR[2^VK!TP[VS[_KJM7S[-Y M]7:D8&Q8H,(UN?:[OXPCL-5[K!IX4X0WT,IX>E&%SXR>L&C9@-;7ALC7 ]Z@ M?13/_P502P,$% @ )(*N6H4F9\'C! PPP !D !X;"]W;W)K&ULI5=K;]LV%/TKA#L4+>#%CNRD61X&\NBP DL;--WR M8=@'6KJVN%"D2U)QO%^_Y#!^NW"3 M0UL'K0Q=..'KJI)N=4+:+H]ZV[V[#U_5O S\83 Y7,@Y75+X8W'AL!JT5@I5 MD?'*&N%H=M0[WMX_&;-\%/A3T=)WW@4CF5I[S8M/Q5%OR &1ICRP!8G'#9V2 MUFP(87QO;/9:EZS8?;^S_FO$#BQ3Z>G4ZBM5A/*HM]<3!_8IED=^ QKWVP5:.,=:5,>LK;AH>.PM[P"86L4F'RR=R0#V Y>*&,^&S-S^?275.04TWB MDO+:J:#('PX"O+'.(&\LGR3+V1.61^+Z&7H?7%&TR"D*<3'[[4*JPYR\=?QU >'\OE[ M$PG)QWBS#VZI?;^0.1WUT#.>W WU)F_?;.\.#YY!,&X1C)^S_K^2]ZSES7&_ MUMW#G<>4?JF=,!"JUD*4A/Q:2#J"FWLN%T[=R$!Z)4K2A2PG9!@1S:)9I.7L2-U#7%',,,OK&<(PU[(EAA$=(#;YZ^7V%<]A@[^,JIE>.P5 &#*I>:S7A5*2U=-W=V%F/V ML@) [VM"ZWY^3<*[*&8(O,D:S^_(J&-QQT%B%BL?T>=:>J]F"EI)*CV[)HE._1@.!@OTRF3 MJ +EA9BN(*@U4'/47.Z#$!'>L)9VTZ M*)59U&# UWDII&^UN2)CRD11QT9:%UQ,SI*-85/Y6-;"P1/F;=.3!5U@:["\/(VZF Y6%ZQ?6:"(W0D"K] KQ3\X M4J-H+IU;, M)R64CM#P>)E'//4$E>D"*6.[P^Y^T$'L9.LQGTT:C1]KO<@8\[9TS2#ZG#KPTXO]?;=(MA%O*9.;<"E-[Z6.,W)L0#V9]:&NP4[ M:/]OF?P'4$L#!!0 ( "2"KEH-T6G=+04 .P, 9 >&PO=V]R:W-H M965T7F&I-A=!%/03G^2ZL#PQ7)PW8HVW:+\T'S5)PQU* M+BNLC50U:%Q=!)?1V57"^D[AJ\2-.1@#1[)4ZHZ%=_E%,&*'L,3,,H*@SSU> M8UDR$+GQO<,,=ENRX>&X1W_K8J=8EL+@M2J_R=P6%T$:0(XKT9;VD]K\@5T\ M$\;+5&G<+VR\[C@)(&N-555G3!Y4LO9?\:/+PX%!.GK"(.X,8N>WW\AY>2.L M6)QKM0'-VH3& Q>JLR;G9,U%N;6:5B79V<5;(35\%66+\ &%:352QJTY'UH" M9Y5AU@%=>:#X": Q?%"U+0R\J7/,']H/R:F=9W'OV57\+. 'H0*W:#IZ_8S#R<[AY#GT_U*:9X$>=_,)=/A<(*Q428=5UFNP8EE2DDQ! MKEM:N595(^KMB]_2.)J]-I )4X3N%_![*^]%R2 AB#IG(VU?6=05R/H>C?4; M++=@Y+J6*YF)VAXL$8S%M=);$ ;4"H@ 6;%C@(.\P0RK)>I^-H&7LB;'5&MH MV9R>'1M=5N2#_!MS\MQ8^%+3Q54Z^7>ZL,SAQ'ME#(5ZD)=K#HNW=8,W^_C@ M=A_:NX/0G-X)).%X'M'792E^_6#4KQWKO,=[+"$ZXU.$6SKA^HYNY%5+4<$T MC$?SG6;_];,/USQ*#"^C4SCC8E6H,RE*:$1#68LF812/>3T^[859.(OF])N, M$C+0C=)4!;K7EA:B*(R3A-734R>,T]U.G?AE<#L NKSKC*J*6:NEE93$*)S/ M)Q#MM4F>'DG.U&K'O0?&\2A,1V2]#XMGJ-9'XFV[M,I2<,D\C*8S8#9$HU,G MIE$76!*%R32&ST[Q!";S<$:J)ZQ\XM7]9,K%B-)P3#8GO=7/=/M?^#0.XS1Y M@D_]VK'.FF_ M72<^S:MT3LX<,BDZDI[F51I&\Q0F>R+23#Q)CL4=KR9)&"4Q$%^SXFSR34L$:(5K3RQF12V_M^1H:X@^ M5D'E[V5W\:Z81JR-[FY\["[N*[62M:A=B8B15K>>2RV34=9-2V-;" N"D%$2 MD(9<:FJ2RBTH32I[:[8.45QLZ;S1K7ZIZ?I%R]34XK,O7O4^WJ0I:COO!4[)VW+_AK8("RQE)1R ME\B"FC_*F/?F%36BMMAV1HS/D/10>:U7VKEXL/, +O_UBQ?ZL*G7XJ:EI2I3 M:\H4WS*"*,L'(1584C+H/:57W-6=4ETC;)&;JQLR\[%R19%JY3LXY [N,6?\ M_H^U-L.##I0NB+7KLZD]4&UM?3.ZF]VU\I>^@]VK^_\!M.^:K](25V0Z&LPF M 977]=9>L*IQ_>Q26>J.W;"@OR.H68'65TK97N -=G]P%O\ 4$L#!!0 ( M "2"KEJ,0R7_>@0 %L+ 9 >&PO=V]R:W-H965T1(F<^?C.<&[) M&BO:R:4JN:%?M>CK6B'/G%)9]%D0#/HE%Y4WF[BU>S6;R,84HL)[!;HI2ZZ> M;["0ZZD7>IN%![%8&KO0GTUJOL!'-'_4]XK^^EN43)18:2$K4)A/O>OPZB:V M\D[@3X%KO3<':\E9!ASIO"/,CU9^SL22Q>*@OMOK!N9:/8@[31 M1I:=,C$H1=6._*GSPY["*#BAP#H%YGBW!SF6'[CALXF2:U!6FM#LQ)GJM(F< MJ.RE/!I%NX+TS.R&%[Q*$1Y=!'Q PT6A)WU#T%:@GW8P-RT,.P$3P5=9F:6& MCU6&V:%^GRAM>;$-KQMV%O K5SV(0A]8P)(S>-'6SLCA1:^Q4V\,A;^NY]HH M"HV_C]G<0L;'(6VZ7.F:ISCU*!\TJA5ZL[=OPD'P_@SA>$LX/H=^@O QEF=Q MCK,\>NOPI5IA9:02>#A/)>6@-IB!S,$L$7)94#*+:@'O1$4KLM&\RO3E%="U MIB<)7G%(P5#'K)1K#7\7KAM?\#M7M% M#X$RST[EXZ]&U%2:C0\5!=#!'A[N_<[@N>-SJ3C=_O/N%+K]:."'XY&=)/XX M'L,=4IE>RB(#45*#V'Z)XBV9:U33/CEMG"^4#?3(9RRB;QR' M)_P%R="/A@DDB1]&C*S0^HI>K;0IFX);!V9(]YD*;C8WQTNIC/BG77@7AWXR M9)O1;*F<0?!9&=Q.2^(;E[#[T+&+(@+1JJZ-:4.04*V!+BKLEB M9KBB5[TE?Q"9].I2'5KXL, *%:6M8YN5-KNIW-J'>*?@H@"AJ7B3"6LGA4QF MM]Q,RT)DSGQM:&BODD+)FN:X:EAS.E5W@:5?A-7WI4(\>)_^&VDNN!Y.678! MXWC@BDQ U_+X"M.HG@%CFY*5'7.LA0N3D1M9PN";2\+K-%4-\;L3?"X*86R5 M:W=XMU/L[?S.U-J<7#S&<3#:22B94VB2,9WQU.IID2'8M\6F M28ZDS?QH/*!P#R@S6@O"X1!8$G9.D2>MN@"*_W!(X\"ES+&WM+_7\)2H%JZM MLPYI*M/V/MO5;>=XW39,._&V[23/+ 0%48$YJ0:]8>*!:ENY]L?(VK5/%/[4 MC+GIDKI?5%: ]G,IS>;''K#MIV?_ E!+ P04 " D@JY:71G_[?@% ! M#P &0 'AL+W=O74DJO+4MC-E2S,^KR3=)H7-VJY M\ORB?W%6B:6<2?^IFEKT^BU*KDJIG3*:K%R<=RZ3TZL1CP\#_E1R[7;:Q$SF MQGSASOO\O#-@AV0A,\\( H];^486!0/!C7^VF)UV2C;<;3?HOP7NX#(73KXQ MQ6>5^]5YY[A#N5R(NO W9OV[W/(9,UYF"A?^:1W'CH8=RFKG3;DUA@>ETO$I MOFYUV#$X'CQBD&X-TN!WG"AX^59X<7%FS9HLCP8:-P+58 WGE.9%F7F+KPIV M_F+F3?;ED'GE],:46&LG6*ZSO@S1,NI0.TO$3>,.6ZC#@#1^CNA)6'EX%JE.Q061YNK16 MZ*4,[;\NY\Y;A,G?#Y&/V*.'L3EU3ETE,GG>06XX:6]EY^+%+\ED\/H)ST>M MYZ.GT+]KD7X,B=Z556$V4E(80=/:9BN,HFDA-+W7=%E95?!*#+MD:DM71MB< MS(+>*HL$,]:1J"IK;@$,"]G N0!7-7 5P[T4#B&\H;DD >41+;2PIB2/;"=O MPK-+?B7IQ2_':3IX_6XVG89F\OH5K5UR//L!1B^FIPL/D4,M*6DHM+;S8 M$'2S)"@='9:<1-M14#('TZ72A-\U).,7?V!P.<=X^" %M-A(SA2F!;/HX([B M5F42107^0&]F!=+1^'C\:\,T*XQC[Q#_>? R6-W!/407#39=*.M\:Y@+'T9C MFM5IB"N)X45T*P7PL#8[W(J.M!2Y;E[2.T[[.93E+M0I?*8 M!]4R^]-3WD=9N0^ AHI7,:R'A,511DKV%3E$(]HC'IT&>;: M_]REI'LTG'2/1\/'N =?Q*U0A> 4Q"F#%K6O\5(Y5POP^T:>SQ*G@<'-$GPER1CNL'.'2Q9P1S?"U.%H\%D,J;C=$ SG!XA4K>IW&&@ MR'$N4WQT"!M1TIV,ATCZ=#BACR$ #M ;'IW@.>PF1TG,[T F)%H(_'!J8-HQ M9IX+$YIOR,D,J>JQ/6TJ^1.E_D%]X\'!5!$$@G:'XW%XCI,1WH+WU7OP'4$L#!!0 ( "2"KEI= MG@GQ*P8 *X0 9 >&PO=V]R:W-H965TGA=JJ6>9.).YM9_YY5URT8LX()WJ.+ 'A9][?:W3E!TAC"^USUZ[)!MV MGQOO;R5WY#)77E_;])-)PNJB=]*C1"]4F88[N_Y-U_DF#S6IC1)"9O/I57VL<.@8GT2,&X]I@+'%7"TF4;U10E^?.KLGQ;'CC!TE5 MK!&%OTN8W$7^31_S=?"E-V-"? M5W,?'"CPU[X<*Q?3_2Y8%J]\H6)]T0/OO7;WNG?Y_-GH973V1(#3-L#I4]Z_ M7X ?,*>;K]K%QFNR"_I0,.T]@;P45AK_G-:45>727"X"V/&J19M4_F!HVJ>U M)N-]BP MM['6B1<7HT$$K:2IR)X]18-1,[#K9D SE2*ZJR7 0:\)GM[E &'#Z8\D_85) MD;VB.[TTS"'):Q94D/F$%VX/-#N<5"$QUK.;:WK!#\^?G8S'T1D[>\2!S!B= M_=J'(6-40O&8$JLTW=!>)0,R^@>43( [HMG2^5,UD /F8-UG2B1?-$"A09(GJ M+^&*#K"7=;@#+FU1&7S##'@3%R;'HO!3]YHW'*"9EQ)B2RQZ47/AYLU54_.* M,+>&.3X#JBE^GZNL.*-KV\Z_G5UO.=(M-SZ@%F!\Z:"C."V])+J4)($ CR?& MQTZ'1@@8]25,N52^P@EY)#HP8W*D\DU!^]AL-K2"7LG;-"$+X:)6TDP.-UHY M9INQC>5*)!U7N0,^'D#"X"T[5+QSF:S,1*5'#Z&6;L)/''F7L@/Z*'E+&T.H MON.ZSSB L'X/[7E*[169XM#Q&>U".HVG^0:(;"C3887H!0KC 06*)0[FFDM: MUP ?V5?MH2%U71:N FFJ:CH[I6T@Y:$M%5S/8T.IU,I'C"2QAV MN\7N]*;X _I4ZSNW 0P&V5PG5TYFFRN_21F3DB-MD>L )XJ\ AHI<:-OVWW% M!24X-C-_MT]4IPJJWB6894*48D>0%0NZP7QG-YI*>"*W3FR[BH-*T)-LRNVC MUMZ';6FF)]'9P^Z^ _,UHK/NX91=;=9SWIKP]Q([%O)J]#F0\GDQ%LVU@JUL M]FNV^O9C\F0!MA)]3*'"@7TJ.S[Z:97M!ZK?C+?+_S_EMI=(S9[CNMN)W[NI M-WM%PUP)I^(Y *DQ\FWFCZJ^(L W.[JM@AM-&]JSRE$N*C"JI$"05EV\JL X M(?W";TMG?4/![OF'@=X1J AR&]C^>LK^5@$TBOK3:=2/HNBG9?\8=W"\V6T' MQB7T!8<#(,VK58&P6]FN8PVL$CGN[9STQJ>#X^U1;\'&U8J>V3(Z/NL Z,5= M@JX9;TF%[0KW6\_;^YM_WYV.^FC"_Q$V [H2GP]/X@?322=7I_G&S=[OE4G5 M'$S$#;VBY'_:,NS<(3/MEG)3]LBJS$-UG6Q'V\OX574'W4ZO;O*(?&D M=ZH7,(T&QT<]&ULI5C;CMRX$?T5HI,-;*#=]^FY9&8 >[Q)%O!B#3N)L5CD@2U1 M+<84J26I:2M?GU-%2:V>6Y+-2[=$%:M.W0Y+NCXX_S642D7QK3(VW$S*&.NK M^3QDI:IDF+E:63PIG*]DQ*W?ST/MED7/NE]&6EA?GM=R[WZK.+?ZH\>=_-!2ZXK98-V M5GA5W$S>+J_>;4B>!?ZNU2&,K@5YLG/N*]W\D-],%@1(&95%TB#Q=Z_NE#&D M"#!^[71.!I.T<7S=:_\3^PY?=C*H.V>^Z#R6-Y.+B+9S:LN@TKQIT,,80)$IQGG;IW2=WJ&75K\2,4E$%\;W.5G^Z? ]J ;]7C>[=Z4>&/TL_$>CD5 MJ\7J[ 5]Z\'?->M;_Q9_Q7L=,N-"XY7XY>TN1(^B^<=344A&-D\;H4:Z"K7, MU,T$G1*4OU>3VS_\;KE=_/$%%S:#"YN7M/_O*?L_U(D/"B7/ZRZ6R@MM$Q%0 M1_VU5)"N:FE;42+<4):,"+L_@PC.8O3(R M0@L06F??9-)F8 2Y,^HQX@.\$?"K< ;<%<0K-NV: -7A]17\]TJ=%+Q N6;E M4*_TLQ$_G>IEO\2KY6OQ>[&Y\*YZG V.UN*"_Y?G:_$V4-Y/ SX5 MKO&@Q]AX'5N4@#1MT"PHK6VD$8WM'0'8D4U(4%7]QYJ0+Y?$SQP\A(*VO%>9 MJG;($L%[E!P.PJMC1BY%Q8&DNEA/M]L%26S%V72QW-#EN=A,%V=KNKS ZF;! M I>X7&_/J&YP)A=(J%B>3;>76'$1_N+(T%53=?FN99L:?7TY75Z< TH(5T)7 M=1-3WT()BO-B>G&^[;IPW%( MIBNETOQ264._&!T:BH$[T&@!![M\#P2AR!> MH70'BZ,MEEW[-E8VN>8D.!2.#>DJ.*-S;M"=-)0'P4?;XT#?-=Y3Z]?.]Q > M4\";A[U'+JRFE\NU^.#L_@V7_W^U;74^75]>=#%]R=_?R<(D*3JWN,<75/ND=]%(S:NPS 5*+> M3/F(RA8A(L\*<,>A0!>G;]RA96.) !Q00]_J#@<>3;MSD>/O M(@0U%>BHF$]"'<:Q'GGD=?C*H1C':M>*)DS)=\8B#1W,>ZC_2(E69).+FN*_ M4P!R[\Q].J -R\DL0>A*V7ELP>#_1#&/W="6 J>[,JI'MHASE&>R[#?B.5G) M.FEB,$,#/U$]MJ)1.4<%%2B[/14*N7"M4FD4># J9$;J"A4"MP[:&,AD;F_U MOU / H,A8^BFH[;WZX2V"K@(9H3Y$+&0(GTHE14Z4B@!:LRQD1Z4[33U]8"8&T%&ZP?7 6JMJA /,C[CP-LM3F[4/@%%HNIIQFH(A) M"N]^._C/5*R[G+%%U"$PRZ,Q=!B4Z0XW:Y%TWBI/+K,A*H<24\.I1S/Q9V[& M$Q34[82 HNQI>H"OVI#AEI_!K$'LDU^TD"76A\^T3:(#*+\H8')S@($75JXD MHN1]=T+Y+L%'K%RBX_)B;T!I,E4*\!L-OJ/0-29//HV)0LBL]/XX8@2YN*O<-QA/$(!;;" M.@:6WAYQZ7!Y]3Q/KX\V96?6TK_3#]*#HJ< ,SHB^K626>02?\O'5 MTC#ST&<*N.IZO2.+DWXG["^U+D]PZ9T#0S^;DR:P0:)\2P?KZ.WE&?,D3M4! MYM,N)_MX_Z1A=_;4F^=\].&@4G[/GT>XX&U,WQ"&U>$+S-OTX>$HGC[?X"C; M(Q?HJP);%[/SLPF.%?XDDFZBJ_DS!)@FNHHO2R5Q.)$ GA<.YU=W0P:&[U*W M_P902P,$% @ )(*N6C6RY$8Y"0 ]A< !D !X;"]W;W)K&ULM5AM;^.X$?XKA"]W30#'EN2\;=Z ;/8676 /#6ZO711% M/] 29;&11!])Q?']^CXSE&39L=/[TB^))7&&\_+,,T/>KHQ]=H527KQ69>WN M1H7WR^OIU*6%JJ2;F*6J\24WMI(>CW8Q=4NK9,9"53E-HNAB6DE=C^YO^=V3 MO;\UC2]UK9ZL<$U52;O^J$JSNAO%H^[%KWI1>'HQO;]=RH7ZIOS?ET\63]-> M2Z8K53MM:F%5?C=ZB*\_GM%Z7O /K59N\%N0)W-CGNGA2W8WBL@@5:K4DP:) M?R_J494E*8(9O[:TO%?L0IKD\N12!OG3=4*PX)*U^&_?&WC,!"XB@X()*U PG:' MC=C*3]++^UMK5L+2:FBC'^PJ2\,X75-2OGF+KQIR_OZ3FOO;J8IZFK=3' M()4)?#W/G+2#P[WW.!EUG^W5165R[I4S5W0BX=\J^J-'] M3S_$%]'-.Y:>]9:>O:?]8 +>E=IO$SO]I:[-B_2-$U^-K,7#PBJ%(O+B;[7X MK.:V0>F)>,:1/A/'OE#BIQ^NDB2Z>42L=+T0P)'B5_'-R5BLE("TLBH3NO9& M2)&CC$[72EJ!UY4H:1M99\*IM+':KX7L]QRJWS:GVP!P]\70:)TK\2W5JDX5 MGE2=D4F?&^C_,A9?G\1QJZX7V9A*=N2Y+C4<$"8?:'V42^UE*9ZD];6R#IJ^ M/HX%.(V%%K!J04)+J^M4+[%25J:! ]#2+ 7+U:%3@M!BG-M MG>\^TJ>CV=#4E70B;ZA,A=F#@(GXKN!*68HY$EWJA9Z7BAS.K%R)S*QJW@2Y M-?!YN$L\W*59,L,66KV$S&-%JJQ'5Z U"CQ6(Y^(;MEP1KN/0.^I6ZI4YQH6 M6HC7#?8O .K"E)D+R&KF_P&+"X;?4JZ['8!%F2+?B'ZN8/[O#3*'1?$DBG[D ML,'6329=0R'K,!MBGN.G)X.6BK!0-Q7!''!'3&V;4?\V-]IM=N/X0 XKC^4) M/P)/D+7\2I\0K"H5U%U.SF':6"Q+J#J>GXC9)#G_\09+S(NF)/E">D#9LYZ^ M>;56/)IJ*>OUN 5E,@ENLF.LWA4RI!)1DI1)79\^:X00(= EZ_"%MAFYBC*V MCK#0*1_4?PA.NQUY:^&N)A+ MI5\5J*B!E"N^VB=FAI/;7(<9= TBV( .,;; MY3C4#2=F'E('C>K5*X)7H7;U*:M-=DC;5< =*]N/O6UXY;H&?C72ML'D1'PV M)483\OS0_N-A\-^-!L!FO?Z# =6&8N"Q530FT<>Y+&%)CZX-[S N9)K:1F6, M_:9>2IUM0)FA/(".CG;(?#OD 52.$L3.KE-.B!_W6!GZ2*[L F5.*4V!7]=% M9&-<:_5$/%G59[K5224UABB8R4 =C*+P@V_'/;T,R[@6,)$"W&OB$@ZT!I99 M@"WFRJ^4JE$B,)UB$7<_,I521T01(N_L[;L SP:%/$0YZBRG,@V[UF;7FD&F MWQ2$+)W9P@$$V:U7'80#)=;K#6'9H?Z>/F:#Q+S?B=BYM@ETG$Y_[1Z&.M11 MJ"I<.UA2:& 0S0]X3SP3Z'8E+7;Q6H7'U("4)2-YD,&-BE1B^A 8^-V8UP>2 M)Q/[5 B!(U5PM=%A1#'=HR.$4\P.5$$)ON*.7F$*<: FF3?U? M$!/G5.>FE+ MIZ2AI[X%G!]RQ7$6=X;+%$U%&"$" MR( /QF8VQ&:KOO$T_;D^R<)M-L454_5[/J" M^9_DLH]R&XQD81CV^VNR4KXPF*V^FGIQRB? DT8:>\']$!QIWB/-9$ M!:9Q,,"=7.]^_HQ>N8D8JS^BZ2"*(JKJZWX\VZ4_<3$["RLV':,?[N*+"_$5 M.+[& +;Y_)9>Q?%Y,CLYM+2/W7$\CC[$)^(W0[DJMZ-Q))(/X_CJ(IQ7&T_W M68,#0S>''YH$N;[H$H!CZ-[$ZY]\5O@Y8/$36#C,3UW\COCF(DYNZ/%B^'!) MG)1QE;(+OG$F1H7:<"W;O^TOM1_"7>YF>;@1!Y(7-*V7*H=H-+D\'PD; M;IG#@S=+OMF=&X]9G'\62@(&M #?&PO=V]R:W-H965T'H$&2K@_#'FCI)!&A2)6DXN3?[XZR M%65(7&S8BRT=[[N[[^,=Q?G&V#M7(7IXJ)5VBZCROCF)8Y=56 MW8!K4M%(8 M6PM/K[:,76-1Y %4JSA-DL.X%E)'RWFP7=GEW+1>28U7%EQ;U\(^GJ$RFT4T MCG:&:UE6G@WQH% >B,KYM8T9]2@8.GW?1/P;NQ&4M M'*Z,^BIS7RVBHPAR+$2K_+79_(Y;/C..EQGEPB]L.M]9&D'6.F_J+9@JJ*7N M_L7#5H3!M#13K:/DSH%P8#32 MI/,>B+5"^XA=69JA+?*./<."FOJ9VDIE:83\[D7Y13.,95" M:J$S2>H0)A#7&094+>Z8HB/F;%'*9)TH.6:23[JN+(>#*UQ(FL*52J?[' M)W:4=2U42. J(O^K1UL/T 2D$\K1N>(K4$:7G0-WM\=29E :H=P(RE;FW/D< M>%"7*6B'\I+(KM%O$#4TUN1MYDDOYPG'[2%L5@5Z.;6 ,DW8>7-,%N2VLHC/3C&X#*1WAQ#_3/L"X10F4W@#OSQ9SF#\GBSCA'YZXPK& M,S;.AL9S@DUF 3VH;4,U*^XMHJX#SW^MQG;1D1@9ROLP8MO6Z::O"%RI9:7) M'83!#[%>E^MT%_*Z#[D+]0]]SLFA7A.]K64Z5&%RS"H<#E7X !-^'Q\-C1]) MDW$ZM'QB2_)]L2YR6J*."J3#%"CJN#P,+)5/ ]5W/(.?&,-;J2F,:1TUK'MW M\GU>7[1DT6X\S9>#'V$Z&1W/TNXA.3Z"E[X!\> +3K3*<$_A(XG$[3[FO;6_ M"IUV-X G]^X>1?654C/_@J#)P?M9!+:[FW0OWC3A/K VGC0,CQ5=Y]"R ZT7 MQOC="R?H+XC+OP%02P,$% @ )(*N6GF3P9!# @ F@4 !D !X;"]W M;W)K&ULK51=;],P%/TK5I@02*S.9ZE*$FEM0>-A MJ%H9/+O);6,ML8/M--N_QW;2T$UIA1 OC:]]S[GGN+XW;KEXE 6 0D]5R63B M%$K5"QWA@26G%3!).4," M=HESX\V7H>/)OB:)XYK!$$)F3(,1'\.L(2R-$1:QJ^> MTQE*&N#I^LC^Q7K77K9$PI*7/VFNBL29.2B''6E*=<_;6^C]1(8OXZ6TOZCM M",)RV6,E:YM&'#6UUET=?PS=0)TQYDJ)/K,O#@F01&PO=V]R:W-H965T6M427")(K2 ML&)G.)0JVG01P\O[CGR]*Z%^%L4K,E?D7[ MK;[3- I[E)Q7* U7$C06TV >7US&J3-H9_S%<6WVGL&%LE#JT0VN\VD0.48H M,+,.@M'?"J]0"(=$//[?@@:]3V>X__R,_EL;/ 6S8 :OE/B;Y[:]HF8L]@'!TQ2+8& M201,D(3,DT&@_LL(]ZV,(.C\ >BG8 BPU-XP<2CX#O3T M,*@[/Q>F9AE. SH@!O4*@]G[=W$:??10/NTIG_K09U^4_'#?"(0X6HP^Q/O4 M89ZKVOZ8[XZR'[1@PJ"'W*@G-_+B'"/V@)KV+#O"S8_Y&K>TYY:^.7%^?G[< MU_B=]?S.O#A_XHI+^**T1FOAGQNL%JC_/<3'B_/&[3?N68Y_QHD9_P3*YSWE MB764#JCA4Y Z1]L/>2J"JE)40;\O2 %XLX0!4H^&JY%C ;8V: M6>?RMBAXAGH K#NKP,!NV=2"2>#2HJN98!48,C'%!FR)P,C.B0])EQ,;DD.$ M3%'.G::U0>WM[5^R7T_@@:Q:R%HK6A@T0-K=8AE&,\FBJ9V7-!VD4;*MJ>ZU MFW*EJIK)S?MWXR0^^VC(5561=I(,98_ 9$[J) 38YV,#].T/)AO2<$F1:;?KZ384>&$F&I80!38\8+3E'CRFTH,-2&T 1;4CY:/BZ0 M$\]>B*.=SD7^,L J/"AH?K,72^LCLB>XL1?Q@5MQF(G?[LB.\G%*=IR2-]5O MC["\@FAUXRN.\4ZI8Z^JSEH*;N-0>W,X;7[[EV?51VFGQ+%?-3\_U5PS/RD_ MPH]GQD=KI\&Q7S#W%^Y3TQ$\R,T/,Z1&*V<;7YL5[[0W]HOD?+G4N'258KYB M7+#%D:W?H8Q:%'>16,W2E*K3)%SMNP_W^MP*];+MYEV1:J3M6M[^;7]CF'=] M\FYZ=]V@;;'D5$ %%F0:G9R1;]UU\-W JKKMFA?*4@_>/I9TZT'M)M#W0BG[ M/' .^GO4[#M02P,$% @ )(*N6I-=WD1[#0 M2@ !D !X;"]W;W)K M&ULQ5IK;R.W%?TKA NDNX!DRZ]]KP';NVF=((FQ MVFT*%/U S5 2US.D0G(LN[^^YUZ2,R-9TL9NV@+!1O+P<9_GGGM'[Y;6W?BY M4D''!SX8JYJZ??M0AD\F5I7RX"O;G;@%T[)DC?5U<'1:/3B MH);:[)V]X[]=N[-WM@F5-NK:"=_4M73W%ZJRR_=[AWOY#Y_T;![H#P=G[Q9R MIL8J?%E<.WP[:$\I=:V,U]8(IZ;O]\X/WUR\IO6\X&]:+7WOLR!-)M;>T)>K M\OW>B 12E2H"G2#QOUMUJ:J*#H(8OZ4S]]HK:6/_]8=NDRD5Y>V^E67 M8?Y^[]6>*-54-E7X9)=_54F?4SJOL)7G?\4RK1WMB:+QP=9I,R2HM8G_EW?) M#K]GPU':<,1RQXM8R@\RR+-WSBZ%H]4XC3ZPJKP;PFE#3AD'AZ<:^\+9A?3: M"SL5UTYY98*,MC*E&$)8_/7]W M$" 4'7U0) $NH@!'6P0X%C]9$^9>?#2E*E?W'T"95J.CK-'%T=M4O@?YQ,?'"+JGYL4CN>=;#Z/LNR-7\A"O=]; MD,W=K=H[^^Y/AR]&;W=(>])*>[+K]!W^O';:%'I1*7Y\:8V'-B4_WZ3$?^$: M\7FND(:%K1?2W)-!&R.;4@=5BL+"_<;'3VD+ODRUD3A.5L+C#@4T"%[,Y:T2 M$Z6,@ $7TF&=-GRP*[%:(87"7,R444Y6U3T]40LZ37:N7'1B8F^ 8%\,"S*F M>UCV\UHYQ+QX]MV?7AT=C=[^Y?S\FC\>OGW.JM(NN5@@)N2D4L(U=!H]<&K6 M5*PR'T3KQJIHG XZK?AX5\REF2D8J*ZU9XC+]XP_7K;7 '4A7X @=<\6VD0T MIEV3)HC2XEAC QX455-"JJKB6_L+Z5JLP4JG?FLT66UR+T@IOH6\4JF@-II\ MGUSG52O*T_SFY[:I<"M,A?)!=L>>KXV)^,Q.8Y-V1W_CP$XE[',J6-H34(EB M1-C&B7-C&FSZI!;6!8%K",O%X6CX(VM-]]TKZ80B]!$?5*'JB7(9/TY8\6U* M3F3%X1:KIPP/MR-4?8S4$G:[)3VD"! MSO89/-7GPO>@OY\^&0D;'VT=,S%&6@KYIP5)]DJ8.Z5$'6M#] Z0O9BWT,[> M)R,/!"" 3]8^X(P<218!2T9I?)+Q9YA"' F$R>,;AR[<^.GA' M?)%\)%FS2.%"#$@@( S"Q'O45C8Q5G2 9NR*Q2-(^!S,WW(&N91 IH!$O>?* M!UTSJGE-\;HERO\P,+;17E[6BA@3"H7TC\_L0;:[76B3PJJ6!DR1EE!$3XG: M<>S+\BNH4MR*91)V!.Q56 /4=9P&,C0Y2I"+N+?U @7$(I8Q,97:H6*0L3NY M%M;K"*%\^H8PQ&ZP0'X*NNP2].=0SJB))]J6/E^FRFCW_#@?0C%#R9T%U!!( MFQ)>)0*;LRNOIDL0E6+:L(*K=U%$9"EP(P" T6Y_!]$X;8G&Z4X&\$T"L7O[ MTP,N8UY(9*))3K^TI;K3@+HK4^RS5S0>+.<6%&!HEU03?#.!]S5,J@!OYU45 MS94(2<;S6%= [XR71?1D%^2JTF#A+%VL7YT1=EGU16O5%SO-\L6S@S_FC-UD MV,>=P"&VALX4WD\U/BTB4J'#?01:KB:IO% ]H'2JY8WJ8&<@OC;EK"O9TJ,% M7$3+I MNP5IDYE8QP(T--BT=M+@&PDG"^R*.(7E2 S7J'+57&@FBQLAE]*5M"0QV.YJ(*E= MI@SPWL+W9#IV7Y$5.Y*O)=MXKW<$0PXBN.),+^FZA4?,_SWJ!'0O2+_M\22[$2K M%@W*E(3]4;4*Z><<5G!VFX;1.^S>;3?-0-2A"\ED5J^53.>SJEVH]C5)]?OW ML.>8<:6BTV#1W%HYB^PB?9+QN 9V&+91@D28<8:NUPS!@*!BP*L4B8I(58K_ M()3$WU9Y/4G+TK%/LB"$3J;M*"DPX8A=,N&_6ZDKGD *395[ C] MPWB#A8DA<-9IMS$46/U".N)*?,9VPQ.!8DA1@V1O)L:Q'T T5?I?,-8,/5H" M74O8.@#983@#O"3E)'NO$K8@C0D*6UU&?F"L-"ITX]Q_HWJVJOEJZ0 MQ;7X)SJR9BU*=!:XX]<5Q_<69U! "P^-*6T$P@LUKTV@6B'[R^BB92Q5+F'S MNF\V.&/=-#";K=4?9XKQEO!R).FM5DOLC@276AU47B;!7?7BWK;OXT@'P?*T MHZ-@[#EQN53Z4$TC3>_5VU[#E^[$L:"#UOEHIM32J#MN.9$^,8KH;UT.9+*> MT@TUW4>T3H"JB.*XP%XN+"S)[1+<4E+B1^B,);WU).N;:4VJE?GX*'97(MOM M60X-YJ71[H]TG37X7*BM]?Z) M1XE/:-],(%I8VH?3QY6E5Z;KR=%3'D<'?=_ZL7?)., O1.#$A:62D(>&WY^/ M+]JI(;NYW+SM"T\CVGWGXR_MMI_M/E\_'+WF+@HY+3X3((MGG]&$%^+ER>CY M&W%50_S;)#J\VJT4'[H9E(C-K<2RT5SM""*"Q?(C !/< M,<@9^,\LDI5[]#"HR <;O7B;"P952P)(I.7)VJFC2&;_R"A!((Y#PH8D*$( M"L$T?Z)8H*X:;QE"/6*^23*MCWY.D)K)O8V MD\*T/27.]MV$=?@@(K*,T=W-#<&$<-W"$M2SK?M/X/0&MOWT9&M?#V,DTV44ZD[-Z04P_!07#C]&[D5(D].30K(//,_&S20P7@'@ MA@Q9:ZMADO5[13K8K\%6'[4XS#-TR3*65KDR>8\!\>"V0CEZ+<%E;&U*T0X# M,ZT#RVAY0X*E-B/VR<095[*?'UJ8G@Q'"(4$\O\3*XNAN*RD0X>;H_1C"UX? M"$%KJ,ADB,'8C7PF])FAW^&PQ>?N MC QZF8?0]RG$AIOH(-_#9\F]5XN(AZ><.B_VQ<S9(U%1E':]WXM1B8<_ \P#Z[_!02T(PE;$@M%Y,6@YZN5@OV&YJ1='W"^ M4IX_*0^2[U7FE>E-)!>:WGF)0O"/!(#R57?<%8V[XIAZ5_F7:5#-P(6[>%6; M)+W*3%&+AWGX*]Z1;V>RI@6U"-&-^_2O&P[^S$BM_^C$VN"9"*9.+9.UHM T9P7,) MUH M1FG7DY8R0'.-[@9 IM>0]/W84REJ^&! VE,K5M@U?2#.JCJ)K/32<$"+ M\/"'!KWL\8@3Z^5 Z&D6AU^,4OE@<53YT!EL%)G'+QM2TMFYGNC_;T[NZ$5> MM[W(Z]T#0\63<:1.^ZI^4Q?RZ$/(*/%U&>O8S8EI,I!G[#R ]'%SC+V$FW_V M_1=99-QX5MD;ZG3]Y^4O'WZ*]'9MPL?\]G->T5"]6UF1ZMLSZM*?QV#K7TNO M]U586T5X$>?QO3=TRK'B5 YH%[]_@(.@><%OQVT"J!+]@H]#AH@*W1FUDJF$ MTSM;W^4ERXY;N[%@.YWH=N3\EJY6;\@SF>[9L0?U76_K7]3=YY_"E:MSS^H ^, M=$:CI$I-L76T__)T3[CX([GX!3C&/TR;V!!LS1_G2I;*T0(\GUKPU/2%+FA_ MJ7CV;U!+ P04 " D@JY:6>^1O1T% *#0 &0 'AL+W=O*F294ZK*812&TV'%N!@L+]W:6BTO M96U*+G"M0-=5Q=3K-9;R^6HP&NP7[GE>&+LP7%YN68X/:#YNUXK>ABU*QBL4 MFDL!"C=7@]5H<3VU\D[@#X[/NO,,-I)$RB?[\EMV-0BM0UAB:BP"H]L.;[ L M+1"Y\7>#.6A-6L7N\Q[]%Q<[Q9(PC3>R_,0S4UP-Y@/(<,/JTMS+YU^QB6=B M\5)9:G>%9R\[F0X@K;615:-,'E1<^#M[:7CH*,S#;RA$C4+D_/:&G)".J7>/+"E1O[\< M&K)@Y89I@W;MT:)OH,5P)X4I--R*#+-C_2%YUKH7[=V[CDX"WC%U#O$H@"B, M)B?PXC;:XP9RY/<@--/'V.GH3J M=[2#CQEPX7O>FN(:F(:-+*F)-;SC DPA:\U$IM\OX+%0B$>I!TI<6K29LY@&W=[S()S%<(+Z24O]Y"3U M_;72Q_M)G'[>'PMLN.4B!V.[#]RN,)IF3LE$2F%1NM.]%TQK(BV 6B2\+(EO MA2GRG>O; "@M!]&2,Y*ASL:O$_=%ECX02)50"S0KXT.+>(.6TF!&B3B#<1#/ M)O"QQ[Y+XGQ\X>Y1.#^ =%Q9V-&)2CE5WY-G409%)RW[P:--WUAA,R%3N%3&S-1G!3,)&C/O9M\>4R:D.M9)N4 M_!&:^2_ M7&2>S+[./FGH^SN[J2C=R>*>'-P[1:E+^FIU4YM:V8WRK0R;@@J3D6PM#AFS M:6;*<*J1UZ.-IHB1!D=3O@JWDB3)ZZ8PSN'QJ/+V/F>20A'2[.-J4Z[]K)2* M4V=0FK-:-;Z1"2D07I$IZQ+-##NTFH:CS1U3W%%%4)IGZ/7(2:-X4GL6*70E M7UEIJRZP*)U*HYIDY1$%^((JY=I&ZBP<#SX;&N!ATC9D>T.)/;@ZF -U]AQ( M3 GX7&=YA7Y.[&2Y\YEJ2++D-0F3BJ+0OF/2YN-!K50GGRG?-A;'?N.D==!R M3"10<]ACI89MK73-A).EZK)E0J?9#M=]<7TU(>_1GM/)%2N[GW53>YG9R]Q] M.2C-=+S?D/VF/]=*9G6GA6E$NT$]&MNIY2YQ%#;SNZ]EAYWS*06>NU.X)NQ/U? @5(U:2I9C:D&I[/Z'.K_,G;OQBY=:?=1!IBV3T6 M]+."R@K0_D9*LW^Q!MK?G^6_4$L#!!0 ( "2"KEHA:]X$9@, #P' 9 M >&PO=V]R:W-H965T7QV,7'VWN 7Q\:\&H/+9*O4@YO<9,L@V6(9S /(,&>UL#]4\PV[ M?*8.+U7"^']H6MO3TP#2VEA5=L[$H.2R_;+G3H=7#O/H'8>D.-W\*Z9EESN#*S[;/^<;XW55!Q_#^7;PDT.P[D+J MK&K+?'V3U147M:6=_E#[- _E=CSZ?8&0*T&7E@0#T\9OD!231")5="TSFGD: MEFS3MU2RCHHD*F)?7QX%MIBRVJ#SXAHPS^F"0L,,,&GY)^](%Q4&'EC5ALG, MG)S!?:$1WQ084'FD15\?[F^R5XH;4[LRAIHLM6=X_5AS^^+T0^DCK 6CMB S MN-ZLUS"(3R >#^=1Y#YQ-(7?3&OB9&"0G,"$L-WO7EDFH%+6@3 A7J!G;#"M M-;>384+&!#1-/L, "+L_M_%\-IR-IS[R=#;WAJ38V^S[ $[8DC3M3B#7 MJFSY4D/V:5FO2]GJ@H=T<8&<-D/JHJ9"WP?%R\BG115BJ74;L,JC-?NJ=[]N&J-32MLVM7^V?AO.V(_XW;]\5$F/G M$A28DVLT.IT&H-M>W4ZLJGQ_W"I+W=8/"WK>4#L#VL\5D>\F+D#_8*[^ 5!+ M P04 " D@JY:3DG]C)4" .!@ &0 'AL+W=OZ M D4GTBANQ*- IPF12\07< OZNK@U)81X M%["R&WOF,DFU?G3"93X-(D<()&3H(G!:EG &4KI 1.-I'3/H()WCYKZ-_MWG M3KFDW,*9E@\BQV(:C *6PYS7$F_TZ@>L\QFZ>)F6UO^S56,[),2LMJC+M3/) MI5#-RI_7==AP&$5O.,1KA]CS;H \RW../)D8O6+&65,TM_&I>F\B)Y1KRBT: M.A7DA\FE6H)%JC):)A3[J=67*VX> 7DJ@=U"5AN! BS[?.[HG7[VK0 M]_'Z[]?@D)U#BHRKG%T\U0)?-DOPYS2U:.@>_=U5A 9CL!O#S=;85CR#:4## M8\$L(4@^?>@=1]_V9##H,ACLBYZ<<6->A%JP>RYK8'KN&UF^-O*_9'9EL!=C M=P9W!;"YEC3:#KW!\J?N/B$=9BVS9S!F MU/*LZ'I.31,'2SMV[YN_#]4>Q_=QJY M?-_<@9U\'77KKHZ&&S-:@EGXE\BR3-<*FW'MM-UC=]K,^*MY\U)2,19"629A M3J[1T4G/M5([X??%O1@@W$&=#[7&EO! 72?@.0?4$L#!!0 M ( "2"KEK?4F2X& 0 "8* 9 >&PO=V]R:W-H965T1HNP4:(,C1?5CL RW3%A%)=$DJ M;O;7[Y ZK+B)^[@O$N?Z.,/Y>,QV0CZIG#$-/\NB4G,GUWH[]3R5Y:RDZDQL M6866M9 EU2C*C:>VDM&5#2H++_#]L5=27CF+F=7=RL5,U+K@%;N5H.JRI/+E MDA5B-W>(TRGN^";71N$M9ENZ8?=,/VYO)4I>C[+B):L4%Q5(MIX[%V1Z&1E_ MZ_"=LYT:C,%4LA3BR0A?5W/'-PFQ@F7:(%#\/;,K5A0&"-/XT6(Z_90F<#CN MT#_;VK&6)57L2A1_\97.YT[BP(JM:5WH.['[D[7UQ 8O$X6R7]@UOM'$@:Q6 M6I1M,&90\JKYTY_M.@P"$O^=@* -"&S>S40VRVNJZ6(FQ0ZD\48T,["EVFA, MCE>F*?=:HI5CG%Y\IES"=UK4#&X85;5DN.):P>D#719,C6:>QEF,KY>UB)<- M8O .8@@WHM*Y@D_5BJU>QWN879]BT*5X&1P%O*'R#$+B0N '\1&\L"\YM'CA M[TN^YBHKA*E:P=\72Z4ELN2?MVIN(*.W(58Y(:+5>BW-+JY>.')""3@"L0:L-59WO?:0EZSC)5+)CMM M!*>\PL1$K="L1M/#H(L2<^#_XMI<":7AL<*SJK#R%SRCU%#Q3>!J*A@0XLJ4 M9::U@T_[^N!^7]K706G6[P0B-TP)_NTJ!>>O1IWMT.<;>V8%D*G9+^P%-[5\ MPD-X76-5,'8#/^T]NW^C?6UK4 (X)2.8FF:53&:<%K"E6UPU$KLD"(T]&'7" MQ)V0%+^1'V& W J)7<"C;*F!$#>((N.>C*P0)OU,K?AX=G\&>%Y7&7;54(]K MCHM(W#2-@>R]41X?2#942\O=5\&![R8^1N_+,AKL]8%X7R^UT%A )QZD[0]<0XGS3NC3(QS2")&V+,21?U*]W^%SZ% M;I!$[_"ILQWZ'.,3=CY-_%\(U:H/K+^AU!C7,QETVLCI@71(JPGV9P()0L:C M1MI/UXKO\RI),9DAD\B!]#ZO$I>D"<1[(J(FB*-#L>=5'+DD"@#Y8C,U8KKW M;L6.69,0M] 8!Y9>-J!1QHEA5NH&8].?-@I7\ZV[P!OVS^"+IJ[?^_>O*#P(-P81A9LC:'^V21V0#:ODD;08FM? DNA\5UAASD^ MY)@T#FA?"Z$[P4S0/PT7_P%02P,$% @ )(*N6BLV0=YN! &0L !D M !X;"]W;W)K&ULK5;;;MLX$/V5@1H4"2#$$B7Y MDCH&DK3%%DBW09+=/BSV@99&%E&)=$DJ3O;K=TC)-1PX4,%G-_=J,7<]7:6DB\T6#:IN'ZZ1)KM3D/XF![<"M6E74'H\5\S5=X MA_:/]8VFM]& 4H@&I1%*@L;R/+B(SR['3MX+_"EP8Y[MP7FR5.J'>_E2G >1 M,PAKS*U#X+0\X!76M0,B,W[VF,%PI5-\OM^B?_:^DR]+;O!*U=]%8:OS8!I M@25O:WNK-K]A[T_F\')5&_^$32>;1@'DK;&JZ97)@D;(;N6/?1R>*4Q?4V"] M O-V=Q=Y*S]RRQ=SK3:@G32AN8UWU6N3<4*ZI-Q935\%Z=G%):^YS!'N? 5\ M1,M%;>#XGB]K-"?SD:4[G.0H[_$N.SSV"EX"7Y6TE8%/LL#BI?Z(;!L,9%L# M+]E!P*]0E_<$0^+MD90)7R1#RBMTD]PI9JU MDO1B]ME[$'&_O5MH@09R1:0S%@MWIZT02E43>X5BFPW1S=X[+\@'@?<'^<4-N+M!$O=^9="O^5)I[@MEN(6BEHS#>#9UFRR\[9I:^X"6""%/!>\Z_NDRANEK?BG.SA.XS";L!/:1.$L MR4Y>N:9+"]5:%DZCQ&U2"M^$POT,'1_I]VB0/,CKECJ>O=_B_E.];^]].@(B93RA M=>QYO"]=HV?C2H-ZY8^B&W=VXMW02)%9":KL&DM2C4XG MU)1U-XAU+U:M_?!#G*11RF\KFEU1.P'Z7BIEMR_N@F$:7OP+4$L#!!0 ( M "2"KEH0ZRV->0, ),( 9 >&PO=V]R:W-H965T86'.-X6Q"_YX6+,-+M!\K6>*9GZ'DO,*A>92@,+UR)N$=]/$ZCN%;QRW M^D@&Z\E*RB<[^3,?>8$EA"5FQB(P&I[Q 87G>D-3R6#^@?G>_D MRXII?)#E7SPWQSC<&1P$[QA$.T-(L>[/18[Y:WN?Z'4XGX6_33WXV.RXV.P/0:X!BZR MLJ% ]I2)\P M3&!.OCE+0J8;_$PO4^T2GZ8)W$0!+.B1X&+3@PT*HE8Z19;3]>.V,.P[ F$O M36*(>E&-XF8'RUV-^E0% MG#WO= 4L*:-M4B@F8.RS &[7IL\XU_7/BH2XZ0,W0]Q^8\G\SSIQX22<%H0* MHQ: MT(T_:,;K7KN).VT7Q7;]LUQ73#B6B):S(-K@=4 M6:IM@>W$R-JUG94TU,2<6-!? RJK0/MK*$N4J! + H !D !X;"]W;W)K&UL MG599;^,V$/XK _5 BBQ#M^U#23>%BV0Q0;9M(NBZ ,MC2UB>6A)*E[_^PXI MVW$2KUKT1>(Q,YSYYILA9UMM/ML*T<%7*92=1Y5S];37LT6%DMEK7:.BG;4V MDCF:FDW/U@99&92DZ&5),NQ)QE6TF(6U>[.8Z<8)KO#>@&VD9&9WBT)OYU$: M'18>^*9R?J&WF-5L@Q_1_5[?&YKUCE9*+E%9KA487,^CFW1Z._#R0> /CEM[ M,@8?R4KKSW[R6SF/$N\0"BR^[&U&QR.]XNGX8/V7$#O% MLF(6EUI\XJ6KYM$X@A+7K!'N06]_Q7T\P<%""QN^L&UE!UD$16.=EGME\D!R MU?[9UST.)PKCY!L*V5XA"WZW!P4OWS''%C.CMV"\-%GS@Q!JT";GN/))^>@, M[7+2V$F@O9SU'9WF-7K&W>]O:S;YA M-X?W9*FR\+,JL7RIWR,?CXYF!T=OLTZ#[YFYACR-(4NR08>]_!AX'NSE_ROP M=]P60MO&(/QUL[+.$'O^/H=">TC__"&^HJ:V9@7.(RH9B^8)H\6/WZ7#Y*>. M$/K'$/I=UA=W2'0DQZT[YUFG[GG/6H,%&21,I&X\-EP5HJ$4T@!@P@J>B7XAODR:\'4)&E(HVT:;?T*YLB*TZ"TNBJ8*J@2/;N &HQA'OO6 MF(4M$NS,PEH+ZAG$PG"T;BR9MI=3>*P,X@M^ ;&CJ([T\)\^?'AI-\0%%^DE M? ]IG/7S\$_R+*P]5AY)63.U@XJ5Y"0\,<.#@\_J]AH^O YM>G+071O I] + ML+QB3[2S08K>]\=G5QP:&<+:(3/V$D;7PW;X5K4D)OI, !V!))C #]T +)FM MH&:\?(4;3,]B4WCQ=.3=>T.?D*:+9\Y,0(94>^;F\7"8>(DA#.(D[?OA M"/IQ,LC]<$RK_20(3&B8#P>>V71;KXERD [BX816M*-XZ3+ALI%[1M9LU_;" M?!*GXQ&Y8NT4N*P;%VJ?U)'*9QR/1\-]UDZ+GAQ+XCQ-X0$+32U4\+;L";Q7 M0 %MK6C?^39+>-E*;Q5=>J[:-YA&L:;D(0F:J*UL.[):\#*TD!43/@\0+KVW M0"\;8WQSJK4YN/"V25V][@X^A"R>I#G<:;6Y"@7ZG]2R49Q/QGM,NV(]0G2N M@'HG-[A$LPGO% N!CNUE?EP]/H5NVA? LWC[CB+>;SCY*G!-JLGUB"K(M&^3 M=N)T'=X#*^WH=1&&%3WGT'@!VE]K[0X3?\#Q@;CX!U!+ P04 " D@JY: ML /+]G8# "4" &0 'AL+W=O,R6,S\VKU>S%1C!9=XK\$T5<7TZR4*M9X'<;!9 M^,)7I74+X6)6LQ4^H/U:WVN:A3U*SBN4ABL)&HMY0FM_D\B!PA%)A9A\#H[QFO4 @'1#3^ZS"#_DCGN#W>H-_XV"F6)3-X MI<1?/+?E/)@$D&/!&F&_J/4G[.+Q!#,EC/^%=6L[I!.SQEA5=+ST4WS4WF5"FT0C_7"R-U:2%?W<%VV(-=V.Y M^IB:FF4X#Z@ #.IG#!;OW\7CZ.,!IL.>Z? 0^N*!ZBUO!((JX+.2JP^/J"OP M_&\E<6ZH%*S9Q?H@[F[6CR7"E:IJ)E^I,#+5$#10B8.E#58I;?DWYLN&V+BU MW/'(*8_.%)C,@1O3,)DA9,J0&)NQ@VY,;IL+7H8BEW"2![T/K;INI53/1,<0 M#4;/,MDST]VZ^>6&_T:F_>OB!'&-&59+PNEO_ C>OYLDBDL# @MRC4[/2#.Z[8'MQ*K: M]YVELM3%_+"DSP;4SH#V"Z7L9N(.Z#]$%M\!4$L#!!0 ( "2"KEK[$/AE M= , (P( 9 >&PO=V]R:W-H965TZ+ M1([FQ6SZ>JL8)+O-5@FJIB^OL2A=K-@CCH!7>\**T3 MA/-IS0I+,=.WRM\Y+@S!VMPF6R4^N(V M-_DLB!P@%)A9YX'1ZP%7*(1S1#"^=CZ#(:0S/%SWWM_XW"F7#3.X4N(3SVTY M"RX#R''+&F'OU.YO[/+Q #,EC'_"KM.- L@:8U75&1."BLOVS;YU//R*0=(9 M)!YW&\BCO&:6S:=:[4 [;?+F%CY5;TW@N'1%65M-7SG9V?D:"Z+8GL%;5(5F M=4#<*-;!O ,?G\GFT$FA?3T!("YR?,NFC+-EKRDV@I MO%?2E@9>RQSSQ_8A(1_@)SW\97+2X7NFSR&-SR")DO$)?^E 1^K]I:?IH+1K MI2V7!7Q>;(S5U#S_'DNW]38Z[LT-U,34+,-90!-C4#]@,/_CM_@B^NL$UM& M=73*^WQ- YHW D%M8>4[!;4!6S(+*V)9\TUC,8@9*$_'::]XK2P5>9)EJ MI#64:(;\P=7S6'I/ ."%Y%MJ&")L#^ '*,BRDF;/AR,TU$4]HJI#I!H-UJ/2 M;;,9V"%]8H:T!9T:9@*WJ#.J"QT3^QSN>FWGDYH5[DN-^*C#@/J#PO<-XAZC M 2 L(!W!,_AS+UE"_(HD<42/0;B">.R$XT/A-9FE8V]]@&U'F&DR?.K2Y_F_ MV6!]9?10&3IV!),994KN2<7E6J/F*C?@^\K[^CE=1XK=N_J!GVM2J#:47B<9 M';*07CD6+@Y9> VIV\>7A\(WQ$F<'$K>.DGT)%DG9F(\S,3XEV?BG9+%RW=T MYN>P, 8I_\WWQ\?<@JZQ8VU_,L;QJ;[)*2L:!E\OX2(+'YD-D87*VN/3Y;TO M%CSGDAA0C:%#U[R8/%V2#Y*[>J\MLU3'WV&4GEV-DW8175W",1K#@QN"*E+X M>]" [XOVLABDPU6[:&^8O7I[3Q.^@DM7NBV91N>OB"W=WGWMQJK:WS<;9:G\ M?EG2[P)JIT#?MTK9?N,"##\@\_\ 4$L#!!0 ( "2"KEIS:1&%0@( -,$ M 9 >&PO=V]R:W-H965T8"8Z_2NEG[/F85U!1GL@%A;@JI:JJ-J4H?&P4T=Z":^V$0W/HU M9<)+(N<[J"22K>9,P$$1;.N:JN>P%5A!PR+1EH.9U M@AUP;HF,C-\#IS>EM,#S\\A^YVHWM:0482?Y#Y;K*O;>>R2'@K9C#&2 ,7P"$ R!TNOM$3N6>:II$ M2G9$V6C#9@^N5(3/6"F6.,Z) NR;=$$()(W>]"4<7P; M^=JDL<%^-E!N>\KP!-V_ JX3U5,[*8WY P M"%<$H31#H:_P+J;:%XYW\0+O5U52P?Y06_P-V4F!DK.<]M,BE3O4"EI<%V(5;8T,SB+W&YE(G\)+7K^:W MP87Q/9T*T=GE_F4S"/_=*[ /QNT M&E3IU@E))ENA^YF;O-/&;OI!_1?>K[OYJ"432#@4!AK,WIF\JE^AWM"R<6.; M2FV6P!TK\]&PO=V]R:W-H965TVDW3_?K8A)"0$M2I]2<#<' M2QS!'?"'Y8R*,[UB"9,,3DU;0E0%3\3V+"]8R2M/!+R)$]N MPI%F2$600L E!19?:YA"FDHFH>-O2:I5ORF!^\=;]F_*O##SB!E,2?HK"7D\ MTOH:"F&!5RF?D\UW* VYDB\@*5.?:%/6&AH*5HR3K 0+!5F2%]_XN0QB#R!X MF@%6"; . /^'-:0KP#-(2!1GJAHOZ"KA.$HHA!AM4 6:%MW?@4<)RG[)*H>[J[0^=DG M=(:2'-W'9,5P'K*ASH4NR:X'I89)H<$ZH<%&MR3G,4/7>0AA':\+/Y4I:VMJ M8K42WF)Z@6SS,[(,RVW0,WTYW&F18U<9VXK//L%W.LW?/T0INN&0L3]-N16\ M3C.OO,,OV1(',-+$+\;7)M,=D=4B<*H(G#9V_YYPG(K;7MEN M;)$"WU-X^>Q9^Y[KV$-]O6_AN,CT#&]75=/F5MK<5FW7M]?C)D6MJ->&WQ%9 MS6"O,MA[I_[K=1E!1V2U"+PJ N^-_5?@W;W6L@?FX*#_CHLLU[.:VZ]?2>NW M2AMG0), -XIJ1;XV_X[(:B8'EM\<8F+ EJ#6;T M^P==V%#E68[3W(;FWB1@MC?B;#QM%-4*>^U?T!5;W:2U,VF]4R.6Q%W%T!%; M/8;=1&*VONU?THKV\;O6M7N'K7A.+NH,4(7YQPLE13 M\"/A8J96A['8]@"5!>+Z@A"^/9$_4&VD_/]02P,$% @ )(*N6JW%BBI[ M @ =@8 !D !X;"]W;W)K&ULK55=;YLP%/TK M%JNF5MH*X:--,X+4)IJZATE1NFX/TQX&HC2A71_V OZX MYW#. 5_21JH'70(8\EAQH:=>:4P]\7V=EU!1?2YK$+BSEJJB!J=JX^M: 2T< MJ.)^& 07?D69\++4K2U4ELJMX4S 0A&]K2JJ_MP E\W4&WE/"TNV*8U=\+.T MIANX W-?+Q3._)ZE8!4(S:0@"M93[WHTF26VWA5\9]#HO3&Q3E92/MC)EV+J M!580<,B-9:!XV\$,.+=$*.-WQ^GUC[3 _?$3^V?G';VLJ(:9Y#]883:74G3U08>R;?:R*H#HX**B?9.'[L<]@"C^ 5 V '" MMP*B#A YHZTR9VM.#G)&3@@3Y%LIMYJ* M0J>^0566V\\[!3>M@O %!5^I.B?1Z ,)@S 9@,]>A\\A[^'Q<[B/6?2!A'T@ MH>.+_A'(6LFJS^$@AI_7*^W6?PW9;?GC87Y[*B>ZICE,/3QV&M0.O.S]N]%% M\&G(_'\B>Q9%U$<1O<:>]>ZIUF &7VU+<.$(;,/89:/+\3CU=_L>CHOBZ#+I MBYYIBWMM\:O:[L6*<0X%=I()K;W]+^:["]02P,$ M% @ )(*N6FH5]Y&ULM5==;]HP%/TK5C9-G=0V(01H&40J9-,JM5,%Z_8P[<$DE\1J8C/; M0/?O9SLA)5W(RI3R0/QUSKWWV->Z'FT9?Q )@$2/64K%V$JD7 UM6X0)9%B< MLQ50-;-D/,-2=7ELBQ4''!E0EMJNX_3M#!-J^2,S=L?]$5O+E%"XXTBLLPSS MWQ-(V79L=:S=P(S$B=0#MC]:X1CF(.]7=USU[)(E(AE001A%')9CZZHS##J. M!I@5WPALQ5X;Z5 6C#WHSG4TMASM$:002DV!U6<#4TA3S:3\^%606J5-#=QO M[]@_F>!5, LL8,K2[R22R=BZL% $2[Q.Y8QM/T,14$_SA2P5YA]M\[4]UT+A M6DB6%6#E049H_L6/A1![ ,53#W +@/LK%9MN&#$-6H5/J-[WN>1JEBB<]&>P ;H&-(.0Q928O3A#7S#G6&\( M.@E 8I**]VKT?AZ@D[?O1[94AC7<#@LCD]R(>\!(%]TR*A.!/M((HBK>5@Z7 M7KL[KR=N(^$MYN>HVSE%KN/V:OR9OASNU<"#9G@ X2%X)9INN0==P]<]Q$<$ MCF,.,3;RLR7:[KYY77QE#L<(AC"UU)PC@&[#\=V\Z M?>=#G69MD@4MD57T]$H]O29V_SI;8<+5Y211F& >@U W5(HE1$@R%*JCR-5U M@[ 0($6=K#E]W]#KBW/C.R-[LZ_5/U<$C2[^IP"]4H!>HP#SA'%Y]A5XAN[I M@J2IBEPE.) -7J10&W(CX;$GJ4VRH"6RBI#]4LC^*V5FOTT]VR0+6B*KZ#DH M]1PT'LSR-/*GTWB**)-(C^MNG98Y9V\OV;J>HW_/DK+1]K$R#?[*B:K2B MP$6IP$6C C>,QL=E9B/?L2>I3;*@);**CI>ECI>OE)F7;>K9)EG0$EE%SX[S M5 @ZKY";!>E^GM3F9K/Q8Y6JL=JK2TY[KS#.0%4"^H$A5 FPIC*O-LO1_!$S MZ0RGIM9_-JX>-U>FI+>?:/*7D:HE8T(%2F&I*)WS@;JG>/[8R#N2K4SYO6!2 M%?.FF:@'&G"]0,TO&9.[CC90/OG\/U!+ P04 " D@JY:&..C.38# !C M"0 &0 'AL+W=O)YG M[!DO]U)]TQ6 (=]K+O3*JXQIKGU?YQ745%_)!@3^V4I54X-#5?JZ44 +YU1S M/PJ"N5]3)KQLZ>;N5;:4K>%,P+TBNJUKJG[< I?[E1=ZAXD'5E;&3OC9LJ$E M/(+YTMPK'/D#2L%J$)I)011L5]Y->+U>6'MG\)7!7A]]$\MD(^4W._A8K+S M!@0<3V+QY)];QMX)&^UD77OC!'43'1O^KW7X<@!<:8=HMXA M&CO,GG"(>X?8$>TB<[3NJ*'94LD]4=8:T>R'T\9Y(QLF;!8?C<*_#/U,]@ [ M$"V0!\AE*9B3]BT9S?Z$@MRUBHF2W(-BLB"O[L!0QO5K-/[R>$=>O7Q-7A(F MR.=*MIJ*0B]]@^'91?R\#^6V"R5Z(I28?)+"5)J\%P44I_X^TAJX10=NM]%% MP$]479$X?$.B($HFXEG_=_?9A7#B0>K8X<5/X-W4LA5&HTHY;Y&AE2M'Q@JW M,N&,;AA'_4$3:HBI@&R@9$)8T>76331.^^LI9;N59],KVTIPK1N:P\K#HZY! M[<#+_G@1SH,_IV1Y)K 3D6:#2+-+Z!GN+U>:1 Y$;C@KJ=V2FFA\ZRT;[XN. M?0>Y#G3\TQ@ M)Y3G ^7YQ?2,*(,V#$LI[F75NE-\LBNP3 Y'777% M=8I@>A;\_%TP'S$\-PKG21A/NO ^SW4WA%F\*KJ..YO$&<>,:I_\+IKM^8/'& MZJD)ARU"!E&ULS5A;3]LP&/TK5H8F)@&)TWO71N*R:4B;AEK8'A /)OG:6B1Q M9KL7_OUL)R1%-$84NO'2VK%]?([S'9VZ@R7C=V(&(-$JB5,Q=&929GW7%>$, M$B*.6 :I&IDPGA"INGSJBHP#B#-A'HSH=";U S<89&0*8Y!7V057/;=$B6@"J: L11PF0^<8 M]T]P3R\P,WY16(JU-M)2;AF[TYWS:.AXFA'$$$H-0=37 DXACC62XO&G '7* M/?7"]?8#^E4W* 2U-%[(8F$^T;*8 MZSDHG O)DF*Q8I#0-/\FJ^(@UA;X?LT"OUC@&][Y1H;E&9$D&'"V1%S/5FBZ M8:2:U8H<3?5;&4NN1JE:)X,1+""= QI!R*8I-2=UB"Z FQ>>AH!^WL9T2LS M_AE(0F/Q24_A+)J'4KV9'& /T11=SMAH.T)=5IFH% M(G1)$SV/3=!8#8D)R2OH^KO"1N<2$G&S26!.I+F9B+977V0DA*&C_". +\ ) M/G[ ;>^S16:CE-FPH0?KFEBI:1/+'*=M<+1G%T'/[P[OF;W?& M!V@L"9=(U3*@Z^,5%3=]4Q&'7O/0PYOT6*EM>>JM4GCKO117:PG"P/3CRJF PX9=$F-G;@'DI8*F?"8T[[\8)UH3?5FF5 M^M@>^R]P0O>)$QI^G16J\,76T'N5%>S(]59PU^Z:^MZN[FU3F@H4PT0A>4<= MY3&>7X7SCF29N7[>,JDNLZ8Y Q(!UQ/4^(0Q^=#1-]KR#XG@+U!+ P04 M" D@JY:++W38'8# #P &0 'AL+W=O+%YF#N<<#FG.?,_%#YD!*/204R873J94<>&Z,LD@Q_*4 M%\#TS):+'"O=%3M7%@)P:IURZ@:>-W5S3)@3S^W86L1S7BI*&*P%DF6>8_'K M"BC?+QS?.0Q\(KM,F0$WGA=X!QM07XJUT#VW04E)#DP2SI" [<*Y]"^6?F@< MK,57 GO9:B-#Y8[S'Z9SDRX%Z7"5GZ^1=>$EDK/-!#K!N+D&A0F5+[58-*"S5VEHS5KNDD=V54567 D MLA!]X$QE$JV87K_K[VJ6#=7@0/4J& 3\@,4I"OT_4> %44\\R__O/AD()VR4 M#RU>> 3ODBF2&@EU&J,-)*4@BFC55P^UXEO!\Z>:K[!@A.W:6G][KX'1C8)< M?N]3N8IBTA^%N24N9($36#CZ&I @[L&)W_SA3[V_^B0:":PCV*01;#*$'G_F M"M,ZG1 <5,(28:WDNT;*$YVIE=';/CFJ-2*[AKGC[F-_$@03S_/F[GV;:H]A M& 7G;<,.C:BA$0W2J \7D;+$=Q10J=-;()4!6OTLB?IECAPP2V5-L;[H6(I6 MF_6ZC\S@2B_=VY' .J),&U&FK^(P3,<4;"2PCF!GC6!GO^$PG/7D^,SSGA^& M/D/?BXX>AEE#8S9(XQ8+H2/N_7L8]'SI7HT$UB%YWI \?Q7)?3ZF8".!=03S MO<=7B?<;TKM>I)VVD[ZK_K_MNC1:CRM_D,:Q>WO8[:5;-19:EV3P2#)X%>E= MAS&6:".A=45[?/SY@T^EL1(\?):XX6PZ#:.G"?[<+IK.@KX<=UNU1 YB9TLL MB1)>,E6]M9O1JHR[,F6C.OR[M(6->XC3%4;ZI?TCC")*&PUI'=ZIN,2 M5;E5=10O;,5RQY6N?VPSTR4J"&.@Y[>&PO=V]R:W-H965T A*K:':0]N!8-@8[@3 MRQ*=(2+S3ZZ_0Z3EQ?+F6UG_9NO4]2P*6-Q9UU8$I@TJH=N5/71VV M ,2S&Q!W@/@U8/@&(.D B1?:9N9E33GR+#5ZS8SS)C:W\;7Q:%(CE/N+,S1T M*PB'V95:@47Z+6B94.Q&JZ-K;AX ^5P"FT'>&($"+#MB-]P8[HK.#J9T+Z3] M2-;[V90=O/^8ADC9.,XP[R*/V\CQ&Y$3=JT5EI9=J@**E_B05/12XHV4<;R7 MD/(^9LG@D,51?+(CG\F_PX=[TDGZRB:>+_E[90_9%.;(N"K8Y6,C\'F[L#\N MYA8-/>>?NVK8QACNCN%:_-S6/(=10#ULP:P@R#Z\&YQ&GW<5X#^1O2C'L"_' MOW2QHTUEFDMA;LKA*TO*>>UPVE51:EX6I;USZ/-MEP MJT,J,$L_."S+=:.P?6&]M9U-8YI-OH=?V6EF7?A6#?_0M ./WL_2:9&P(,KH M^(PZWK1#I#V@KGT?SC525_MM27,7C'.@^X76N#FX /TDSWX#4$L#!!0 ( M "2"KEHXO,IXQ ( +<* 9 >&PO=V]R:W-H965T/#M \.N0E6C4UMD[3_?C90 M!AVEZT2^@(WO.9QS?6U=?\?%K8P %+J/*9-3*U(J.;%M&4808WG,$V!Z9BHTM$P%XE8%B:KN.,[1C3)@5^-FW)Q =8*8L+R M-[XO\E !]/K/ -P"X/XKP"L 7F8T5Y;9FF.% U_P'1(F6K.909:;#*W=$&9V M<:&$7B4:IX(SM@6I]+8HB0A#WSD[^H;%+2B\I( 6$*:"* (2':$9%N*!L VZ MQC0%Q-=9=/PG^M-=2M1#%70XUTN$RG<:?K68H\.#=^C _.<_+ M:3L6]OJ]9>"*I)[I>2 M^ZV2)=S=Z&NC25,K\+7;TA%9S>.@]#C80U4.NK3?$5G-_K"T/]Q35>:\@VK! M]7O#)U7Y0E!-\JB4/&J5_$-%(/356+N._\=!ZV]>NXD=D=4R,BXS,MY##8^[ MM-\16Z;\F&D>XL09@ O;[F7#U.3/-2]JK!;U!+ P04 " D M@JY:PR((3&P* " :0 &0 'AL+W=O6T3D425I.RFN!]_ M)*5HM;NC(;D: ?R26/;LPYG9M^=9#JFKERS_6CP)4;*_EHM5<3UZ*LOUZ_&X MF#^)95)<9FNQJO[RD.7+I*P^YH_C8IV+Y+YIM%R,W3?WHI%]G(] M?1KO4>[3I5@5:;9BN7BX'KUQ7O,XJALT%K^GXJ4X^)G5H=QEV=?ZP_O[Z]&D M]D@LQ+RL(9+JOV=Q(Q:+&JGRX\\=Z&A_S;KAX<_?T=\UP5?!W"6%N,D6?Z3W MY=/U*!ZQ>_&0;!;EY^SE%[$+**CQYMFB:/YE+SO;R8C--T69+7>-*P^6Z6K[ M?_+7+A$'#1S_2 -WU\#MVL#;-?"Z-O!W#?PF,]M0FCSPI$QF5WGVPO+:ND*K M?VB2V;2NPD]7=;_?EGGUU[1J5\[>)6G.?D\6&\$^BJ38Y*+JU+)@%^QV.Q)8 M]L#>I:MD-4^3!7N_*LI\LS79V=^SI&0','5GLL]BOLGS=/7(WB9%6K ?N2B3 M=%'\5 %_N>7LQQ]^8C^P=,5^>\HV1;*Z+Z[&915.[=1XOG/][=9U]XCK'Y/\ MDGG.*^9.W !H?H,WYV*^;^X#S7GWJVO-QU4?[#O"W7>$V^!YK1WQBKTI"E$E MN$H+^Y F=^DB+5-QD/ JQ3+!M=6OV2K7,OZ?#]4%V/M2+(O_0KG=>N/#WM2K MS>MBGBE]GOG>U+D:/Q]FP33RW-A7C3AZ?"RC#+I&^2&K9A(89F#$<.%,M#@AFT + M%'7%,M!P'VB(!OI;5B8+*+C0<#R81GH?W9A6D>=/0BU U 7+ *-]@)%=@!$4 M8*S/1].J"C"(M0 C8];&03"18T'Q/-Y['K>N(\W*W/SP[S\WZ7.RJ'=-*!H4 MJN]23 G&B<"4%$[W*9P.:D.<4O8")1@G E-ZP9E(@CBQVA)WS0)\3P2L@$T1 M=\$VQ ,.[-BM,[MVA]X[L>=,]2 !LZD;&E&B7MA&*0FF@S*GV>U3EI<7I+A(J23L-QAX'>Q02/]-C;NC6VT!U47>-D% MOO_L&FMCV+C="YA!1YZX*[:A2E[M=>75QC[45TCB5^J[,)*B<2HT-\8.) ZI0(N,&*V"ETTO<"]LH)8/VNC)H:%IW MUXOX97H/)-(C="HT-<62P7OQL.8TJ00@1>-4:&I72 G@X>?[+7/:/+:';E$" M9N!^?0Z*[4N*[>,4NV6_SI9+D3>ET>MD+7*PHI*(-&^S1HK&J=#4Y$I"[SN# MFM(^$:G?=04E&J="4[M""@X?%QSM4M(WA803.*ZG5P>;9F$4ZE67N#>VT4K! MX>."HU,EM*DG]"4,,''T0,]2\'U0\=VYY/NXCO3-<_H+(]3VDAG<%=M0)>?W MNY[C@S&:!3'@Z#7-JM$[U2,]!Z7V):7V;YX.),\MD %D)6!EKVCF(MB^)MM^5:'>< MZ=V5)G[EWF.+]%B="DU]?DAR_F RJ&D>D"H$4C1.A:9VA50(P2EE1X%YD!_Y M$_VX'[ "]G3<$=M )?\.;*N.MC,]7V=Y4@IV+^Y =H[#]QY#I%5%5&AJ:B79 M#X9551205A61HG$J-+4KI!P)<#G2KC(#H&;(<7UC3@-FD1/K=_%P=VS#/7@2 MM?.CJ$=E9F J#EU[ 2:ZGL8=L0U4*I( 5R3=GKDU3_$O8CU4P,9\Z/8<*B"0 M*B XI5HF,$MAJ@'L&8$"9M4 UODG[HIMJ))E!]95,\:NU%=GXI?NO4R2GJ]3 MH:EIE[0_&%:)34"J!4C1.!6:^HB]U )AU_-_*'%A>VE_NPG'7; -47+LL"O' M[C3)NTM,_+I]AQ4I&J="4W,NZ7XXK->]A*3R@!2-4Z&I72'E07A*\5$('/$# MVSED!FSGN"NVH4KZ'9Y2?/3E\O:2)8]B-?_&BGI\->,03 IIY1$I&J="4U,L M*7\XK,JCD+3RB!2-4Z&I77'P>AQ)6BEWZ3&';%]RY/DV-$I-3;PMM17;>(N]%TG2=$X%9J:?LG_ MHV%5X42DLH 4C5.AJ5TA94'4]2X F#BSM$9?U=I-..Z";8B2;D==Z7:OR=Y= M=>+7[SV\2(_?J=#4W$O^'_G#FNFD.H$4C5.AJ5TA=4)T2K52!%0KF9L[;*5O M[K@CMH%*%AZ=4JS4S/%'FL J3(M+")%(T M3H6F=H74)]&I;_J)3.7A3N*)+CLAL[@2GOKT/H=(B:1(B4Y_U4\$B1 ]6N!I M /U=M+@KEJ'&4J;$!"_[B=OO"+2;<-P3VTBE(HA/J;J)@4=L)['QE"UD%KN! M_GP'[HIMJ))QQZ?4W1S;GOJJ3]R)ONLE*1JG0E,[0.J!>%C5.3&I/"!%XU1H M:E=(>1!WO3T )J[U"8";=A..NV ;HJ3=L>W+?EJF>W?]B7O0>X"1GLA3H:G9 MEUH@'M8K?V)2Q4"*QJG0U*Z0BB$^I8@I-M^*#V[Q@!FTQ9,R\O'!M]W4WTWT M,&PO M=V]R:W-H965T:FF5H2P,\\Z!"AG$4G88%%RI(1CYV M:Y*1KE *!;>&V:HHN/D] :G7XZ 7; )W8IFC"X3)J.1+N =\*&\-S<*6)1,% M*"NT8@86X^"\=S8=NGR?\"A@;;?&S%4RU_K)32ZS<1 Y02 A1S2T*@B'R047ACUR60&[!FXK W1$:-DQ MN^'&<-=C=C #Y$+:0XI.M5J!03&7P&8P1PH]W,_8P?O#48BDQ[&&:;/WI-X[ M?F7O/KO6"G/+OJ@,LEU\2'6TQ<2;8B9Q)^$U-R>LWSMB<10/]^B9_CM\T"&G MW_:V[_GZ;_;VB)U;"]16KC)V)?A<2($"[*;G&:,O^@[2RABAEC[K1BO3!B;< M"LM^7-$&[!*AL#_W=;M6,]BOQMG!F2UY"N. [KL%LX(@^?"N=QI]WM>J_T2V MT[A!V[A!%WLRI8X(9%)3T^R^2FOXJ8<[GUHET2A<;]").GGONK2;\2U,;-GW]2Z$LD[ @RNCD(ZDRM0G6$]2E]Y&Y1G(E M/\SIOP'&)=#Z0FO<3-P&[9\H^0-02P,$% @ )(*N6JO)DP]C @ 0 8 M !D !X;"]W;W)K&ULK57O3]LP$/U7K Q-(&WD M1UL*+(TT6B'X, E1&)]-_YO4ONFFY0 MOY@2P++72BHS"4IKZ\LP-'D)%3>G6(.BDP7JBEL*]3(TM09>>% EPR2*SL** M"Q5DJ=^[TUF**RN%@CO-S*JJN'Z[ HF;21 '[QOW8EE:MQ%F:JQA"E(Z(I+QI^4,NBL=<'O]SG[MO9.79VY@BO))%+:X^8& M6C]>8([2^%^V:7+'=&.^,A:K%DQQ)53SY*]M';8 \7 /(&D!R;\"!BU@X(TV MRKRM&;<\2S5NF';9Q.86OC8>36Z$&J,&EH28MC#//VWJOFWF3/ MO;^X/F6#^!M+HF34 Y\>AL\@[^##77A(%>C*D'1E2#S?8 _?G+JC6$E@N.BL MO[$I5C4J"GH--HS#?D;7?9>FYCE, FHO WH-0?;U2WP6_>BS^Y_(=LP/.O.# M0^S9$S6:>YVUQAQ,K]>&X,P3N,&PSJ(T7&\;^)R17'0I.[*&G:SA05G70@GZ ML NV1.S_Q!K\:.O.>'P>?Q#6ES2.^J6-.FFC@](>T')))>MZI$_=Z%-%>M3U M)5U\+%RXU=]NME+S+(4R3,*"8-'IF%AT,Z^:P&+M6_X9+0T0ORQIQ(-V"72^ M0+3O@9LBW9]&]A=02P,$% @ )(*N6DR>M>1$ @ L04 !D !X;"]W M;W)K&ULK51=;YLP%/TK%JNF5NH" 9)N&4%J$TW= M0[>H4;>':0\.W 2KQF:V$[)_OVM#4+*EJ ][ 7_<]-:JF>=0%@R+[D M0D^]PIAJXOLZ*Z"D>B K$+BSEJJD!J=JX^M* &GBUA8J M3>36<"9@H8C>EB55O^^ RWKJ#;W#PB/;%,8N^&E2T0TLP3Q5"X4SOV/)60E" M,RF(@O74NQU.9K&-=P'?&-3Z:$RLDY64SW;R.9]Z@14$'#)C&2C^=C #SBT1 MROC5T 8?P"(&P!X6L!40N(G-%&F;,UIX:F MB9(U438:V>S Y<:AT0T3]A:71N$N0YQ)[RBG(@.R=$]F#H8RKLD[\H4J16V& MR66[>(6K3\LYN;RX(A>$"?+ .,>;T(EO4(BE\[/VT+OFT/"%0Q^H&I!H>$W" M(!R=@<_ZX7/(.GA\"O?1?I>#L,M!Z/BBU^1 =TGX<;O21N$[^WG.84,9GZ>T MM3?1%2+BV_:!R2N[08GBE&0\IAE@9'5C?8*S $T*@W+$7S'9\Z//H$CEF=+O MQ<67Z,9RBHA(0D)10&#Y;T>6)$D*)!G'CQK4:GP6AL>?#^B_E\G+9)XQ)TN: M_!U'8G-C32P0D17.$_%(]W^0.B&_P MIPLN_8%^/=2P0YES0M#:6$:1Q5OW' M+S411P821VV :@/4-_#.&+BU@?NS!EYMX)7,5*F4/ 18X,6 /_N W@'X@Q\W="<2P,^MX6,K?!@AW48W8-7'@%D(-\13S+GS?W%.:! MWCP@X3GS3C9N,TUNB>>>P3M,QQ5XD/,ENK,"_KF3P\$705+^KXKZ"MM38Q<[ MRXQO<4AN++EU<,)VQ%K\^@L<.;^I>#,)%A@"ZW#J-9QZ.O1%9XF3 YDJ_BJ< M48E3;*2[A3]VQW)5[8Z)T7H;2HS"I0]=U+CL9.PW&?O:C.\(YS.YU89YFB=8 MD$CND#*8,,;5'BQYP"EE(OZOO*&BHG+@'\7UT8/^&/6XT,8QE N53V?J^FHR M1@T9HS=,?[G#J1(?G00!_8GC]O+6NAR:M\*E!Z=C==KC)NVQ-NVO5."D.^_D M1:H(3E19CT]#D&GWDAZ?K%6(_-Z*"+11O;'2)TW.$VW.CQ(1LW!33G5$=E+M MG*UU+=+0O=(D6& (K,/@M&%P>L'?GZE)3DV"!8; .IQ"I]5>CL%:K,&.BW'J MC7JUJ!@$';=?C/JXWIKWD>:$VKR?I,R/L_456).,,$E!^8'853?^I-U;(=MKH= MZH7['<&<;&@2@3C=,KHC1=;J)RV&M';-CDFTP!1:E\2V$8"32Q:ET>; *%I@ M"JU+;-L?0*U4'E*44T5;B_P3(6M4YZN<(NB?*4K4*GBD5_!+FFYS05B;

14;3 %%J7S;8O0/""U8F,M@=&T0)3:%UBV_8 :57R@.JL M@3H*UG>]7G'JW0TF1^'3.UN;K71'>NG^YVH5AZ17F:N<9;'(SY2FT0?E1M$" M4VA=,MN& 'F7+$VC;8)1M, 46I?8MDU ^F?R TKS]#DXA*.3TC0J]94^D7>F M-%L)C_02?DDS+EA>O?J-,R#U[%I&HU2S>JC!:\>HUC>%UJ6Q;0G0^))%:;1- M,(H6F$+K$MNV"4C_PF! 44Y.'N:X"/5?"^G=#29'X=/S8*\H[:-# 2EAZ_)P M!0<^C=_P1GG\KC#'8+4YT*N<=L'6<<)&0E(9WK ML=PG6'70HKH0=%L>/7BF0M"T_+@A."*L&""_7U$J#A>%@^:XR^)_4$L#!!0 M ( "2"KEJWU]>AG0( !,' 9 >&PO=V]R:W-H965TWV,.W!@4.P:C"S3=+] M^QT;PG*A41_V KZ<[^/[CCG'X[603ZH T.2YY)6:.(76];7KJK2 DJIS44.% M.[F0)=4XE4M7U1)H9D$E=P//B]V2LLI)QG;M3B9CT6C.*KB31#5E2>6?6^!B M/7%\9[-PSY:%-@MN,J[I$N:@'^L[B3.W9\E8"95BHB(2\HESXU]/8Q-O [XS M6*NM,3%.%D(\FM@#^Z 5 T &"UP+"#A!:HZTR:VM&-4W&4JR)--'(9@8V-Q:-;EAE M3G&N)>XRQ.GDEG):I4#F]I>9@::,*_*>?-,%2'*3IK*!C'QA=,$XTPP4.>V" MSC#J<3XCIR=GY(2PBCP4HE&TRM38U:C,\+MII^*V51&\H.(KE>?E*!/2F#YPM;0ZT:F!5;(X'FV%+&E M,)UBE031"'._VG8Q$'3E7?9!.^I&O;K1Z]1)D8,RS81R@G\=P1:E6 ;$I(/A MX>4PK+REC[9%A5?QGO+#H-"+1\/*HUYY=%2Y+:DA1='!Q_R+BSU!AS%!Y _K MB7L]\5$]#T)CZH0M=-IEE?\K]"&E\<&!1KZ_+_4P* Z"<$^KN]6RS'6!'6#) M*D4XY CSSB_0JFQ;<#O1HK9=;"$T]D0[+/#6 FD"<#\70F\FIC'V]V#R%U!+ M P04 " D@JY:0\CQ!\$$ #=&@ &0 'AL+W=OQ6Y4;XU$F$**Y= MET<)SA&_H 4F\LN&LAP)^8V*G&:8\)32@## MFZDSA]OL=3QU,]PAF.A)) \M\.+W"6*279 MCW]K4:=I4QFVGY_5?].#EX-9(XX7-/LKC44R=<8.B/$&E9FXH_O?<3V@H=*+ M:,;U7["OZWH.B$HN:%X;RQ[D*:G^H\<:1,M ZO0;^+6!_UZ#H#8(7AH,WC 8 MU 8#3:8:BN80(H%F$T;W@*G:4DT]:)C:6@X_)6K>5X+)KZFT$[.5H-'#5T4N M!@N:R^7$D9Z0K^ '8@RI60%G(18HS?@767J_"L'9SU\FKI"M*PTWJENZJ5KR MWV@)@EM*1,+!-Q+CN,=^8;8/#/:N''4S=/]YZ#>^47!>L L0>.? ]_R@KS]F M\UNDS*$V'_:8A^\W'QA&$S03&6B]X*V)3!##?1,YE[-(MECZJ@#K)]"NMT1/ MNGB^1RP&?_\A)<%W@7/^3]_T5NT/^MM7^],U+U"$IX[<@#AF.^S,?OD)CKQ? M^]C:% LMB76X#QKN Y-ZAWO4YHZZW'FK7E%S1XK[>?6)@Y3S4GY,"2@P2VD, MSN1C]:W7W8S].G4^*K&A%E-GQ6[F3=Q=&[*I1H?-]\V#NCS\ N3X'^Z@;34^E;DFL0WW<4!\;1[DL691(EJ!@::2H*?9RW("K M>*6/6J4'O?;^=#$>=C>QA;'54P%9$NL NFH 77WTLI119)J7.>]."X6QNZ?2MJ26(7YP!G@9C,:#X$608ZO9+CC_ ,Y_MU+TNBD,Z XU1^W$4A)(=YD)^;HY9+F2I M $]8R+47T2U1+GINV,K,?3B96?!JE0UZF7U$O@(/"0L\DK&H(Q10O;B[S-I&1A52VTI=:%?TARH#G+.>[Q+>HZ#." BD0&ZR)!Q+@3V,Q/%O!U M3C0<]6X$5C,9M_6[?X[95M^?/"48Q9JJ"_+ZA M5#R_J ::&ZW9_U!+ P04 " D@JY:Y\FBC[\$ ""' &0 'AL+W=O MGLKQ_;2?,!(6TD2[R D]Q[?._QP3K$HQUE+WQ- MB !O29SRL;468G-MVSQ8DP3S*[HAJ7RRI"S!0EZRES+:X!59$/&T MF3-Y91)M+![I[G>2-^0IO(#&7'^"71[K6"#8*B!#,:"+5P;'F]Q(HE; M!\RN@ LO '*0UU#/[//IO99RW()O5^.YQ_A>8T9R4N?XI_Q!"#!E#*>FB1Q#8#6J>@55O3;TFC2#BOZ:FLZ0?(VD=J[7"7+[ MPY']6FWF,,B%?5@$U8KTBB*]CXL$=*,*:Y1[:WK7Y3 $5NO4+SKU3ZQ1510M?S]I3;$.3!7K-R!T61@]8B'Q=/7"_5XV+:J-S6 M]*[+80BLUNFPZ'1X8N4.35)E"*Q&%71*/^ 8TVX.5=7E$.[ON@U!4.Z[S>*% M%=\"6^N<$Z9-;!J0RT!:ADBNIEPI28E@42!D]5QOS=LT$AR;>HY3X[8]VB;=.T'G-#*'5Z2C=%_1.+7&C!LX4 M6IVNTL+!5MO33>+^QQ(_#('^$867W@FVFZ?[Q7S>6$]K6N>%,(16;[+T7G!P M:MT:M6^FT.ITE08.MIJ>;KH='HK2V3?4#4'](WLS*JT3:K=.,\H%H$NP833< M!LJ+O))T2YJ*;$?JNCJFT.I]EU8,P1.+&1FU9:;0ZG25M@RU^IA.8LZAJCKU MX9Z6&V(@](Z(N71#J-T-/LU"J>28;M1J-E9I])V3*;1ZXZ7#0KU3 MJ]FH S.%5J>K=&#H$R_ /JMF[U#-_O[6W! T0,X1.9?.!WW@?$@L;ZTN@/R7 M2!B.]>+A,(G22/YAQ.HLH;%BH^^D3*'5.2B=%>J?6ME&/9HIM#I=I4=#[2_( M.BE[NR_MPRB$W'W';%=.P@[19>S_1Y MT][]*;R>ZF,ENX3)3N<>,%M%\C]C3)82TKGJRU\;RPZ\L@M!-_K,Z)D*01,] M7!,<$J8"Y/,EI>+]0DU0'#M.?@%02P,$% @ )(*N6N_0/>4[!@ ,3, M !D !X;"]W;W)K&ULM9O9;N,V%(9?A7 '@QD@ ML#8O<<8QD%A+!VB*8()T+HI>,#)M"Y%$E:2=## /7U*2M45F[/;TQMIXOD.+ MOTCJES1_H>R9;PD1Z#6)4WX]V J171D&#[[[MGBSG=B3A*R3U#?)K<3V>G Y0"NRQKM8?*,OOY+R#XT5+Z0QSW_12UG6'*!PQP5-RF!9 M@R1*BR5^+4]$(\"VC@3898!]:H!3!CB=@-&Q*HW*@-&I >,R8-RMTNQ(P*0, MF'0#[",!TS)@FC=6<7;SIG&QP(LYHR^(J=*2IE;R]LVC98M$J9+B@V#R:"3C MQ&*)LTC@&#T(&CZC3RX1.(KY9_0!&8AO,2,<12EZ3"/!+^1.N7X7Q;$4$9\; M0N97%",L ML''06V->#71+V@(_2 CW-)T]#9$]SFM-_&EMM[%17B)-SG6-72(PY1W1= M7B)__B:/HZ^")/ROGDK>%K!1/TP-+%<\PR&Y'LB1@Q.V)X/%QU^LB?FE3S>0 M,!<2YD'"?$A8 1K:654:66DHR^^RYL6_* MYFVQJ7TYGK1+^9 U"X!@+3V,*SV,M7KXGL^$R KA/6%R9E=+(&-1V".$P_%5 M+HD5C6/,.,H(*T2AU%%WO'T*T=;G7(5 PMP"=ME4R-"<=?3QMI UG$T[\H"L M5@ $:\EC4LECHI7'[_)6(V,T)&3%T9K1Y)@:^EI:BSZWI2%A;@&;-!NQT\Q% MB5FCA#GLE/$AJQ0 P5JM/*U:>:IMY0<(DW+%(1'+BQ,@FXH(PU4%L M-G(+"X)P0G>IZ&MQ;9IS6QP2YD+"/$B8#PD+IF^$+>_X*]FVQ'%9B>/R7\T8 M+E J.P>Y,SH4""D7I\\4M%G/U0HDS+U\,P4P.[T#9#H?$A8 P5I*F55*F6F5 MLL2IH RIWH2C&]E;D(3T]Q-:SKEM#PES(6$>),R'A 5 L)9,++-V=$S(&]:2 M!B074)H+2O- :3XH+8"BM373< &MTV>BC(0DVO?/.DM.3,0STL.,CB0MV&AG+(D?>Q MO52^Z#6"'0. FIL@M)<4)H'2O-! M:0$4K:V9VBNU]&9IQR>1_4U$^^<@H";G.[5RT ^"6=\]M@M:#P^4YH/2 BA: M6QFU36KI?=+^P0?]1'?X-4IV2:](0/U14)H+2O- :3XH+8"BM853.Z_6%'08 M G5806DN*,T#I?F@M "*UM9,;D>V,PSM<;PKMHN7'=:459YLKX9 G=>2 MUKS='G?L4A@/VY"L[9S0OJOX+2/%":7]*:/8P]Z_8P 53. M0@5&X\7]A+!-_DV&>OJR2T7Q%GJUM_CNP[6NO/SSB,[^&^OJ)O\*PJ@QQ<\$2%H$F^NB5X19@J((^O*16'#96@ M^DIF\0]02P,$% @ )(*N6G)5&ULK551;],P$/XK5IC0)HTY3=H-C332VH&&Q,2TL?& M>'"3:V,MMH/MMN/?<[;3T(ZL\,!+8U_N^^[[+O8U6RO]:"H 2YY$+V(4,:/EC/J M2CK@]GK#_L%[1R\S9F"JZJ^\M-4X>AN1$N9L6=M;M;Z"UH\76*C:^%^R#KEG MF%PLC56B!:,"P65XLJ>V#UL Y.D')"T@>0X8O@!(6T#JC09EWM8ELRS/M%H3 M[;*1S2U\;SP:W7#ION*=U?B6(\[F4R4$M_A9K"%,EF2JI.5R ;+@8,@;\@FP M1Q@UEAQ>@F6\-D<8OK^[)(<'1^2 <$F^5&II$&PR:E&2(Z9%6WX2RB?V>U^? L^PG\?=Y7/3L +&$5Y6 WH%4?[ZU> T?M=G M\C^1[5@>=I:'^]CSSPUHYLX0J8/Y LWW.0XTIY[ M5/DB&:497VTYZDN(T MZ9)V%(XZA:.]"A^8YFQ6P]\$COZH'3]3MR\C2*-;5U. 7OB)9;#D4MIPJKMH M&(H3'(I^>#R+X["\\#."_J8)DQ;/[()+@V[F2!F?G*$J':97V%C5^ $P4Q;' MB5]6./!!NP1\/U?*;C:N0/<7DO\"4$L#!!0 ( "2"KEK,.C0Z10( !,% M 9 >&PO=V]R:W-H965TV1<,G2^NT(#;=*O6M0U''(*W2/,LF MJ1;2)&41]VY=6=@U*6GPUH%?:RW<\R4JNYTEP^1EXTZN&@H;:5FT8H7W2#_: M6\=6VJ/44J/QTAIPN)PE%\/SRW'PCPX_)6[]WAJ"DH6UC\&XKF=)%@BAPHH" M@N#/!N>H5 !B&G]VF$F?,@3NKU_0OT3MK&4A/,ZM>I U-;/D4P(U+L5:T9W= M?L6=GK. 5UGEXQNVG>]DDD"U]F3U+I@9:&FZKWC:U6$O(!^_$9#O O+(NTL4 M65X)$F7A[!9<\&:TL(A28S23DR;\E'MR?"HYCLJYU5H25YD\"%/#W!J29H6F MDNCA%+Y3@PYND(7#M>F:(%3SY I)2.4_%"DQC0"65KN4EUW*_(V4WX0;P&CX M$?(L/WL=GC+[7D+>2\@CWNB_)%Q)7RGKUP[AU\7"D^,^^'V(=)=D?#A)F(US MWXH*9PDWOT>WP:1\_VXXR3X?D3#J)8R.H9R/HKAL^-9"%QSX?&DMO1AADOI[L/P+4$L#!!0 ( "2"KEJ*:9T" M@@( /H% 9 >&PO=V]R:W-H965TAJ36R MPH,J$<91=!I6C,L@2_W>0F>I:JS@$A<:3%-53/^:HE#;23 *=ALW?%U:MQ%F M:(OVKEYHLL*>I> 52L.5!(VK27 YNIB-G;]W^,IQ:_;6X")9*G7OC$_% M)(B<(!286\? Z+?!&0KAB$C&SXXSZ*]TP/WUCOV#CYUB63*#,R6^\<*6D^ \ M@ )7K!'V1FT_8A?/B>/+E3#^"]O.-PH@;XQ55069:E66]#.F]C MXT.*KP\RW@4YC5\DO&+Z&)+1&XBC^&1 S^SOX>,7Y"1]SA//E_Q3SN?JYWVU4H5[[Z6(@5XVT;;'UN^T F]( \XW^9)\&VZ7OY_ / M33L5J936G-I&X(HHH^,S&@NZG32M857MFW6I++6^7Y8TG%$[!SI?*65WAKN@ M'_?9;U!+ P04 " D@JY:WBO>"FX# #I# &0 'AL+W=O_Q[SL =LZV0OU4&H-$C9[F:.YG6Q87K MJF4&G*AS44!NKJR%Y$2;H=RXJI! 5E409Z[O>9'+"8 &,627#\:<6 M=9HU;6#[^%G]F+DG"A:"_:(KG@"67JU 3\N+M$)V]/T5M$ M<_0]$Z4RLFKF:@-KEW27-=BG'9C_"M@UD>L$K>AW+O89V"I-^!?L\7JB"+&'NF =.@7P )WWW!D?>ASY[ M_TGLA=F@,1L,J:A$@GT-6,L)XN:VR-1IG^N=5%1)V9?&0QI$D3=S']IN M!M<;Z6;2N)D<^BPA9XZ.%)!WQ0>B1XV("'Q\"G?>#A ?C$"X,.^*#T M2/"H 8^.@<=]X-%AQB=>]U89E!X)/FW I\? DS[PZ2%X$(4=\$'ID>!Q QX/ M@G_/P!3QM0;9AQ\?X.,P2KK\@RN,Y$\:_F287VC";'VCO.2(556E($]57>IS ME!PX"A(<3SN.!M<!IU MW PO-]9.JU' 1^S831'WC&Z([<#Z:SH^W!@OP+AK97"IL5;VM1P/5L]T44II M[BQ4"%GUDJ:E85UWII79UWSV:LVO5VH;]A/WZTL>^3./A M.GTE\LV9N:WX>/S#ZNU/@R3N\O=,BW$4= RXK3[4?@28'FY##0N#M8GSSJ$-D8+6^S8;C8RV] ZC 6Z$1JZ/8P]*/8Y$=4/3U+B]K^O M)#LFA23L(2^63KKOTWTGW3EMI7K2&P"#GCD3.L,;8YII$.AR YSHD6Q V)U: M*DZ,-=4ZT(T"4GD09T$4AI. $RIPGOJUA<$_5R!TRV&1[C M_<(#76^,6PCRM"%K6()Y;!;*6L' 4E$.0E,ID((ZP[?C:9$X?^_PBT*K#^;( M*5E)^>2,>97AT 4$#$KC&(@==E 8X[(AO&OY\3#D0YX.-^S?_/:K985T5!( M]IM69I/A+QA54),M,P^R_0Z]GAO'5TJF_1>UG>\DPJC<:B-Y#[81<"JZD3SW M>3@ C),3@*@'1/\+B'M [(5VD7E9,V)(GBK9(N6\+9N;^-QXM%5#A;O%I5%V MEUJ M7Z>!L2$XHJ#LC[OKCHM.'#>#DSG MAJ(X'U;%GCT^H7MI64&T9(%FC\_?_Y]Y"T=P UW^/I22^9$HN1/8F),%!Q;IN:1_V MF@J-&-06$XX^WV"DN@[4&48VOHA7TMB6X*<;V[1!.0>[7TMI]H;K"\-O('\% M4$L#!!0 ( "2"KEI[H=)+EP< 'PX 9 >&PO=V]R:W-H965TDJ33)SU MEE*N3@8#,5O2E(B#?$4S];^ZX>K; MH%:)64HSP?(,<3H_ZWWQ3Z(PU F**[XS^B@:QTC?RC3/?^HO5_%9S],EH@F= M22U!U,<#G= DT4JJ'/]6HKTZ3YVP>?RB?EGK,\$<5_]%A=Z_70;"UDGE:)50E2EI6?Y*D"T4@0CG8D MP%4"O)$ XQT)@BI!\-8$896@0#TH;Z7@$!%)QJ<\?T1<7ZW4]$$!LTBM;I]E M^KG?2JY^92J='$=T*M%G]!?AG.@G@#Y&5!*6B$_H QH@L22<"L0R=)\Q*?KJ MI#J^6^9K0;)8G ZD*H-6&LRJ_"9E?GA'?@&ZSC.Y%.@BBVELIQ^HLMH!7F9!\K9JC1#^^J@O0E:2I^*>EE.>E6MBN MIM\R)V)%9O2LIUXC@O('VAO__IM_Z/W11@Y2+ (2LRB&-<70I3Z^5,+H@21K MBO*Y>F],91L[IT97=J7882&FW\X/X\!3?Z>#AR84H"PM*,,:RM )I:A:K*Y: M?;3.2)ISR?ZC,8J9F.7KK)634[8KIU)LV.#D>\?^!B:@'"U,AS6F0R>F^R:5 M ID0:_7ZH8@^J>Y9T#9$3LFNB ZW$ UQL$$(*$.+T%%-Z,A):)(0(73#>M3= MC'I)Y1QQW2'WT9PP7C:\-DI.V:Z4CK8H'6\U-Z ,+4JCFM+(2>F6SM9USR/07O&8TB*D&(1 MD)A%T?=,A.B]M_5FZW1*N?Y-Z,K+)%.!UHPDB:K&T^>7!*).(=!'%3Z6D=@G M5<=WQF3G59F:K37$H8='=H.=N,O>%324FDVZ$8O[[R5-GRB?,4'1BK,9;5RS M"3?.DX1P@5;JN11X-6<3!K>R+DLU:K#&!Z-@D[2S[)U) ZG9I+$AC=]+^N6, MI#QMI>56]CWT3-4#:+5&SJ2=$0*IV0B-[_"= ?G8[I]:28%Z#5"U"$K-AF?L MAA^"]DT^J/4 58N@U&R4QJ3X;I=RE3U0(4N#\IUP1J:)(IFIYJM.HV]$TCZZ M>UY1]./B2>H!*_W[A>JYJ![QR+-VWNX\;SA+::&-?EQ3W0>VJ4S<*ITY[\/D M^,;E^&Z;LQ&/_D+->+65(:C' 56+H-1LEL8/^4>PS1_4"(&J15!J-DICFGRW M:]H:I-C9;[MUAHYN&]020:G9O(PI\IUNX8TC795(RV*W4GRXM. M5DCU$6OC,5/XR**=434=@1N0O /O:+@)"M1M0*G9H(S;P&Y/<$X$$ZBOJM;LO?$4YV-T7NE-V)K@/ZX"- M=<"OA?%4H2KAD<6"TX6.Z%><93.V(@DBJ9[AZ+_V2ANVUKW-\1-W63J3VX<9 MP,8,8+<9>/?4D%NW:R0+JA95:LV@QP\:,8_-R@3[V#W[\:[Y(;=F9TZ@$3_> MGDDYW(G)!/+8'8#7T41%I;\S.'4+=68SVGKJV_-"+1<-=]ZRB<6Q.Q;?_08O M(RHZG]-B7H7.UE#R9<#]SANG,\0GV])D\L7;=V M?V[ESHL@0&-Z*#6;JHGI Q]V.0EDG#X!58N@U&R4)NH/W%'_!>'),ZI###2G M]+50HE)\+91P9]P9TSZB_J"Q?JG+/$)+.V;9SG8,NY@)=C73/LQ!8,Q! #O! M$(!.,("J15!J-DKC$@*W2WA/.VZW!/YF.P:U!%!J-B9C"8).\P.?T27C*I*Y MJU9BOCY?X-;O7 5!K0&4FLW66(@ =KX@ '4/H&H1E)J-TMB,P&TSWC;^'6S' M^RVK,R?NO#J3V=GCC6FU_>S"GI06[\^I,9A^.(S2.(W0[CCO*T[?. MSKNE.E%%"YTK2.SA2'H"76]W*+S)?%9N_IKF4>5H<+BF) M*=<7J-_G>2Y?ON@,Z@V'X_\!4$L#!!0 ( "2"KEKYKQXLK@( ,,& 9 M >&PO=V]R:W-H965T8# M$B@+D=JB:I4ZJ2KM=C'MPB0'L.K8F>T W:_?L4,S-E(FC0OBK_.^S\FQG70C MU;-> 1BR+;G0$V]E3#7V?9VOH*3Z7%8@<&8A54D-=M72UY4"6KB@DOM1$"1^ M29GPLM2-W:LLE;7A3,"](KHN2ZI>KH#+S<0+O=>!![9<&3O@9VE%ES #\U3= M*^SYK4K!2A":24$4+";>93B^&MGU;L$7!AN]UR8VD[F4S[9S6TR\P (!A]Q8 M!8J/-5P#YU8(,7[L-+W6T@;NMU_5;USNF,N<:KB6_"LKS&KBC3Q2P(+6W#S( MS2?8Y1-;O5QR[?[)IED[1,>\UD:6NV#LETPT3[K=O8>]@"AZ(R#:!42.NS%R ME%-J:)8JN2'*KD8UVW"INFB$8\(69684SC*,,]D4YH;TR R+7=0C6LN=AK"N:P\3##:]!K<'+WK\+D^#C$=)^2]H_II[=H#!94UZ[ MEUX@=Q=AHY$X#7O UED_P%_JKSNL!ZWUX*CU95&,245?;%&QCKUG)@I\&L L M.RD:N7B/(ND/NAGBEB'^-P,MI3+L)Q0$MLR0!4"7>WS@'B9)MWO2NB='W>] MZS&IQ6\ 6P#"M*ZIP+KDLOM%) ."73&C"88%Q MP?D0Z55S938=(RMW3&PO=V]R:W-H965T %, MOUESD1.EIV+CRD( 22NC/'-]SXOJQN!-ZYC9>4IH#DY0S)& ]=R[Q] H'QJ!: M\8W"7AZ-D0EEQ?F3F7Q-YXYG%$$&B3(NB+[MX!JRS'C2.GX=G#H-TQ@>CU^] M?ZZ"U\&LB(1KGGVGJ=K.G;EB3,E/W?/\%#@&%QE_",UE=T;Y>.PH'Z'&Y0.=G M'_YVX^I@FHC\)B*_\AOT1;2@,LFX+ 6@'Y-&]:XE_7 %J4)K !M_TDYV%-GIV'NK25XO_P:DG**2):2@.A65B$,2 M=-$9/%&6ZKL"?225M?!X+54#K/M4AZZC6HG_2]=;:E)3;*B4)6$)H(1WZ,%M M/:'?L4OP6Z'#O=6I2TZJ:Q\OF5V);\F,-\$=4MXJ&>XO9?66S4RO4*97&"%6 M?KNV^1,\_G?'N$<-S?P)%U>-67.F.60VW M^A\%A%F@WZ\Y5Z\3TS:;OY[X#U!+ P04 " D@JY:32QR3ST" #(! M&0 'AL+W=OL3)HVJ2,0 MH)U8B 3M?O2A'0)M>YCV8)(CL>K8F7V![K_?V0X9DR@OB<^^^^[[SG=.#]H\ MV0H V7,ME9U'%6(SBV.;5U!S.] -*#K9:5-S)-.4L6T,\,('U3).AL/KN.9" M15GJ]U8F2W6+4BA8&6;;NN;FSQ*D/LRC473<6(NR0K<19VG#2]@ ?FM6AJRX M1RE$#7:VG]EQV"[\TD8GEK4===,#&HA0I__MS5X20@25X(2+J Q/,.B3S+.XX\ M2XT^,..\"2$R04.G@N(PVT!))<8K]AET:7A3B9Q+QE7!OF(% MAJUA#ZH%=J]" [A*OF./W!CNRLG>W %R(>W;-$:BXT#CO$N]#*F3%U*/V8-6 M6%GV4150_!\?DXQ>2W+4LDPN CYP,V#CT15+ALF4V:#L NZXK]'8XXXOUXAJ MT6B#0I7LYV)KT5!'_3HG.Z!-SJ.Y*9O9AN&ULM9IM;^HV%,>_BI5)TR9U36P> MRP )\'VHM&H5U;87TUZXP4#4)&:.@3MI'W[. PG.->X%G;UI2>+SL\\_^9-S M2,9'(=^R+><*?4GB-)MX6Z5V(]_/PBU/6'8O=CS51]9")DSI3;GQLYWD;%4$ M);%/@J#O)RQ*O>FXV/)LGV2,/G/G,?B./&P=]JQC#9;E>_P MI^,=V_ 7KG[;/4N]Y=>4593P-(M$BB1?3[P9'E'2SP.*$;]'_)B=?49Y*J]" MO.4;CZN)%^0KXC$/58Y@^M^!+W@>?S[1/Q;)ZV1>6<87 M(OXC6JGMQ!MZ:,77;!^KI3A^YE5"O9P7BC@K_J)C-3;P4+C/E$BJ8+V")$K+ M_^Q+)<19@.;8 T@50-H!W0L!G2J@TP[H7PCH5@'=0IDRE4('RA2;CJ4X(IF/ MUK3\0R%F$:W3C]+\O+\HJ8]&.DY-7_A>5UASYQL9%LMXU"%B.6KM"O:LLE M6O(#3_<%BW3KZZW%C7^E5 MYW/[8;7">;E"6>.J.Q\0!\+5M>7C#J<\O!1N9-.IKX!.P>M>X)W.\+_-:9O9SI*3DG\] MC;(="_G$T]\_&9<'[DV__P[W@Y]M"D'"*!#,4*];J]@QZ M5#S)_K()V844$A)&@6"&D+U:R)[S,C2%E%K(.[3C,M^G[S\V'4L>#@I@?G\[ M3(/[CK;$X5P@YZS7"@0$,P3JUP+UK_7IW":+DW+MY04)HT P0[U!K=X VJ<# M2"$A810(9@@YK(4< OMT:/,I'K1\:A]E#J+.I=V8^$.=^,.U_EO8TG52KKUL M(&$4"&:HAX.FT R@'5@1@;0$I5$HFJGF6=F.@6U8 =L.Z[5\^&W#J'MYMZ9/ MFO3)M6:DUJ2=F*NO($@:A:*9$C9E/^Z ^Q&T!P"E42B:J6;3!F!G<7R+'T'[ M@(K6KH:_LNW_4>+CIL;'[B)_%H9BGZH,+7G(HP-[C=^_G[J15^L$V@] T4PY MFXX ]\$M#-H>@-(H%,U4L^D0L+-NOL7" ZOI'MJW5-#BWSXI[M>3FNDW=3UV M%_;O>/.#50"@@KS2"9)&H6BFG$VW@!_ O0G:.H#2*!3-_,&U:1Z(LYR^P9L5 ML.W-?LN;[GFO5&ULK55=3]LP%/TKEH04U,Z>J 8D[*Z5K9G&JR\ T&ECA0;4(HC \"VK&) 2;C4Q MZ[IF^ND*A-I.Z(@^+]SQLK)N(G"3ZV)"0Y<0",BM8V#XVL ,A'!$F,:?CI/VGW3 MW?$S^R>O';4LF8&9$C]Y8:L)/:>D@!5;"WNGME^@TS-V?+D2QC_)MHL-*0-0!HO\%Q!T@]D+;S+RL.;,L2[7:$NVBDC6JX=*>XL!IW.>)LMH 2S\0>D\^@2LV:BN=,$"8+\LU6H,D=;$"N@5S+ M]L8XZT_(C9+ER0WZ7Y"I,6 -63[M,) I7BAR. ?+N#!'"+A?S,GAP1$Y(%R2 M[Y5:&_R$20.+$EPB0=ZE>]6F&^U)]RO3IR0>'9,HC,8#\-GK\#GD/3QY"0_0 MN-Z]J'LB-_2BCV%%TEN1O'KH M7KCPPID7/J2VI3CS%*Z3;K(DOAA':;#9E3$4%5Z<]U%M?L%.>;O6BD50#^2BG[/'%-I/]G9'\!4$L# M!!0 ( "2"KEI&PODEX3"MSM:SHD[?@C M"9S+J_WXQ<6N"2A5[1[A.A5RURHLD4Q M^?@X^4/BF'3O*.D#RIAP?U?8CCXW.HYWCM$2#^W*+=QFH1!RK^4GGV^37>:P M+I;1("ODIF8BX@)&G>8L>*1B2,94\(GBP,IHSL7*A3L0F!:B4($VQ6K2M2%2 M/3FX[7I0Q[5.SF6A;&Z7P?V>U,/W@'4/#'(A&H,=X@*C04FU9DK>F(X=;(// MH*!NWZ]*XW"FZ*K=Z9(-P=Y,DDFA4J::-&VR#HT&@F5@1_'9'.ZZ*$, M2YR MTT@YG1626@]K1MTPLE,FQ!T\Y#^S'>UEMK5O=M=DTS2&ZJ:3<1W0WU9SVMNR MT8MT@Y(_%OK+PDQ'VCX4-[M5+.-+VU]FC0%,O8VKT[(4J\^"SV3.W.2/3C@: MT#4OF!>*/YEL4"I3$V"*!(],:3[=COQ6M+QG2[TNIV6&>^ZW.>IDP^.\\8>4TG MYD^A'7TS/F4970A]WX!#LFE_9RE?Y$DSZA86HAZU:7^#Z;7CYK1JS '&<2PLS_\TGSXZ'X=AWOI> MI(]R^BC'L7S(V'ZP/'Y.8B[_3),DBN(86]'QV.M@C*U;',./7PWS!@PL#V3Z MN[7&=QNOD,-U@.WIH0K!9HI7(C93?*T!\:\;,)+$O]M8'F!@NX#5#N3WYX&: M\G.B"'85\X8]P3B2)!@"M>BOT3A&5B>&CW]_L*-8?20$3;8T.P6BP^0"X99K>]9!:GA M$\+2! IB@ \ !X;"]W;W)K8F]O:RYX;6S%FM]OVCH4@/\5BZ=>Z7*! M_&!;52JMJ[9;J>U0J?HZF>0 5A,;V8;>[:^_=E*VDS4<[>6()XACS!T('Q@/A5=&A\)8\*3@Q?TZ'P_%7CFU5)7RWV># MYGL% U$KK6KU \K98#P0;F->_C56_3#:RVI16%-5L\&D/?$$UJOB3?$B0C[* MI6M*O%P^R R&TS'H<&5LLXW-9KV96#<0ZC<'NV\^:PJ#_9:>OABS6ZK]#HV M$ZYBA"ZCZ8?#9]N)Y_9/NM&L5JJ :U/L:M"^[4<+5034;J.V;B"TK&$V^&3V M8,55/B7F[*]0!_(4'?93DT25H!Z4(WYRI5!DX2G$E*ZD+ M$ @R(2"3$T)^2Q!D2D"F)X%<1)SP4P29$9#9"2$[/9D3D/DI(5,$.24@IZ>$ MS!#D.P+RW2DAQ MYA9\F ^P![T#\0"%66L5SV,T4C#,AKD/[=X: MY\0VB&^QD;9C/LHJ$V:MW.@].!\K.:&TN#=Z>"?M,X30H@*QP)B45R;,8ODL ME15/L@JW]PZDVUEHD#$>990)LU(.H4(3?(GKT'NJZL!1)IDPJV3A3?$\7,IV M"JQ#2T[^/C@HB4RX+2*W*@3 HN'$4)0T)NS6J&OU.B[B3!?LQ".6+"+(D%K&.-O\47,&LKMYNX>FFZ[JO?@,5!-"6)A%D2<_E= M[)V8@VU^'@?MM7)%9>*<@B$I723,NKC13I7!%(]6EN&A$Q^ME>'9^WW*2\CE M"+,XR*"@$T4GE#@29G'T! 7B[#'*S?V%&2E[),SV>!L=]")2#DF8'4*&"=V[ M3:DD85;)D3#AT)T8DY)+PBR7WG"A]YY3=DF8[7(L;G@%Q9B4>!)F\9"F%F37"5PSC.&% M7*\MK#$FI9N463?]F''86%ET HR44D[*K)Q^S'L98J&8U\:8E')29N7T8_XL MQ9B4.8S:2$,2D+98E(4R9@L=PYS;T*K%$U)&62ACMM QS";W(CYB3,I"&;.% MCBXIVON.,2D+9:=:^0R;)"7&I"R4<:]\<.+T$ QW%A*0(Z?LD[._ 4!AXI CI^R3L[\#0&'B3>&OH'.26>G%D\KX2+T%2YJR NSV^-7@\?P=;!0QB3$D_.+)X>S#OI M=S8LA,),A_3&>24>/)3[O5T!OF4$M"464 T)A[D4TI T_85 MN::RN[PH8:4TE/?A+UPH#TT6RKOC6R/+QF=WA% M\/)_4$L#!!0 ( "2"KEKU29+, 0( %XD : >&PO7W)E;',O=V]R M:V)O;VLN>&UL+G)E;'/-VDMNHT 4A>&M6"P@Y?LB22O.J">91MD @'O0DJC-"!>+RB\$G!#P\YT,W[?M3V>V'LO@X'DYEU>RF:?B5 M4EGO\K$K-_V03^ M5\WX]"I-JAVD$*3U@PR"K'Z00Y#7#PH(BOI!+02U]8-N(>BV?M =!-W5#[J' MH/OZ0;)$&9<$23.L";06Y%H(O!8$6PC$%B1;",P61%L(U!9D6PC<%H1;".06 MI%L([!;$6PCT5M1;"?16U%L)]-;9PS:!WHIZ*X'>BGHK@=Z*>BN!WHIZ*X'> MBGHK@=Z*>BN!WHIZ*X'>AGH;@=Z&>AN!WH9Z&X'>-GM90J"WH=Y&H+>AWD:@ MMZ'>1J"WH=Y&H+>AWD:@MZ'>1J"WH]Y.H+>CWDZ@MZ/>3J"WH]Y.H+?/7G83 MZ.VHMQ/H[:BW$^CMJ+<3Z.VHMQ/H[:BW$^@=J'<0Z!VH=Q#H':AW$.@=J'<0 MZ!VH=Q#H';./E01Z!^H=!'H'ZAT$>@?J'01Z!^H=!'JWJ'=+H'>+>K<_J7>9 M/@^Y7'N^UGC]GZ1Z.I^;KY>_++]VSF["!><$OQ,]_@502P,$% @ )(*N M6M9,P)+@ 0 XR, !, !;0V]N=&5N=%]4>7!E&ULS=K+3L,P$ 70 M7XFR18WK5WF(L@&VT 4_8)()C9K$EFV@_#U."I5 I:(J$G?3J+4]=^*1SJJ7 M#V^.0K;NVC[,\V6,[H*Q4"ZI,Z&PCOJT4EO?F9B^^B?F3+DR3\3$=#ICI>TC M]7$2AQKYU>4-U>:YC=GM.OT<&MO/^^I8R M^4@HTLEQ3U@V+IRD#3G;F3"L_!SP<>[^A;QO*LH6QL<[TZ5=;-VR$-]:"L7^ M$CMZM'7=E%39\KE+1XK@/)DJ+(EBUQ:;HB?[DV.Z8=I\\J/SQS+[ M/.A;@8V/X^_X MZXRW]0_L0X#T(4'Z4"!]:) ^9B!]G(+T<0;2QSE('WR*T@B*J!R%5(YB*D=! ME:.HRE%8Y2BNNCM:L_CA^?16>:_C.?C?_MN7H'4$L! A0#% @ )(*N6D;'34B5 MS0 ! ( ! &1O8U!R;W!S+V%P<"YX;6Q02P$"% ,4 M " D@JY:E!!SYO( K @ $0 @ '# 9&]C4')O M<',O8V]R92YX;6Q02P$"% ,4 " D@JY:F5R<(Q & "<)P $P M @ 'D 0 >&PO=&AE;64O=&AE;64Q+GAM;%!+ 0(4 Q0 ( "2" MKEH]N'1CS 4 ,0> 8 " @24( !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% M @ )(*N6N=.E*X$ P < H !@ ("!^14 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ )(*N6G4TX7Q&!@ M>2H !@ ("!DR$ 'AL+W=O1HZ'0@ .\D 8 " @0\H M !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6I8@WDE7 P 6@< !@ M ("!$C, 'AL+W=O9*3@P "0D 9 " @9\V !X;"]W;W)K&UL4$L! A0#% @ )(*N6JI2W'%[!@ -!$ !D M ("!)$, 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ )(*N6@W1:=TM!0 [ P !D ("!LE, M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M)(*N6EV>"?$K!@ KA !D ("!]F, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6J]/HNQ%! M+ H !D ("!AWL 'AL+W=O9/!D$," ":!0 &0 @($# M@ >&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6I-=WD1[#0 M2@ !D M ("!KH8 'AL+W=O^1O1T% *#0 &0 @(%@E >&PO=V]R:W-H M965T&UL4$L! M A0#% @ )(*N6DY)_8R5 @ #@8 !D ("!49T 'AL M+W=O&PO=V]R:W-H965T;@0 !D+ 9 " M@6RD !X;"]W;W)K&UL4$L! A0#% @ )(*N M6A#K+8UY P DP@ !D ("!$:D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6OL0^&5T P C @ M !D ("!S[0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6JW%BBI[ @ =@8 !D M ("!3+X 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ )(*N6J;?,F1& P G! !D ("!W,< 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6CB\ MRGC$ @ MPH !D ("!K-$ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6JO)DP]C @ 0 8 !D M ("!(N( 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ )(*N6K?7UZ&= @ $P< !D ("! MP>P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ )(*N6N_0/>4[!@ ,3, !D ("!@_D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6HIIG0*" M @ ^@4 !D ("!) 4! 'AL+W=O"FX# #I# &0 M@('=!P$ >&PO=V]R:W-H965T&UL4$L! A0#% @ )(*N6GNATDN7!P ?#@ !D M ("! X! 'AL+W=O+*X" ##!@ &0 @('.%0$ >&PO=V]R M:W-H965T&UL M4$L! A0#% @ )(*N6DTL&PO=V]R:W-H965T&UL4$L! A0#% @ M)(*N6ER+R0]$ P +!0 T ( !N"4! 'AL+W-T>6QE&PO=V]R:V)O;VLN>&UL4$L! A0#% @ )(*N M6O5)DLP! @ 7B0 !H ( !#R\! 'AL+U]R96QS+W=O XML 74 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 75 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 77 FilingSummary.xml IDEA: XBRL DOCUMENT 3.25.1 html 172 273 1 false 64 0 false 6 false false R1.htm 0000001 - Document - Cover Page Sheet http://www.codexis.com/role/CoverPage Cover Page Cover 1 false false R2.htm 9952151 - Statement - Condensed Consolidated Balance Sheets (Unaudited) Sheet http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited Condensed Consolidated Balance Sheets (Unaudited) Statements 2 false false R3.htm 9952152 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Sheet http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical) Statements 3 false false R4.htm 9952153 - Statement - Condensed Consolidated Statements of Operations (Unaudited) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited Condensed Consolidated Statements of Operations (Unaudited) Statements 4 false false R5.htm 9952154 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited Condensed Consolidated Statements of Comprehensive Loss (Unaudited) Statements 5 false false R6.htm 9952155 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Statements 6 false false R7.htm 9952156 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited Condensed Consolidated Statements of Cash Flows (Unaudited) Statements 7 false false R8.htm 9952157 - Statement - Condensed Consolidated Statements of Cash Flows (Parenthetical) Sheet http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsParenthetical Condensed Consolidated Statements of Cash Flows (Parenthetical) Statements 8 false false R9.htm 9952158 - Disclosure - Description of Business Sheet http://www.codexis.com/role/DescriptionofBusiness Description of Business Notes 9 false false R10.htm 9952159 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies Basis of Presentation and Summary of Significant Accounting Policies Notes 10 false false R11.htm 9952160 - Disclosure - Revenue Recognition Sheet http://www.codexis.com/role/RevenueRecognition Revenue Recognition Notes 11 false false R12.htm 9952161 - Disclosure - Net Loss per Share Sheet http://www.codexis.com/role/NetLossperShare Net Loss per Share Notes 12 false false R13.htm 9952162 - Disclosure - Investments in Non-Marketable Securities Sheet http://www.codexis.com/role/InvestmentsinNonMarketableSecurities Investments in Non-Marketable Securities Notes 13 false false R14.htm 9952163 - Disclosure - Fair Value Measurements Sheet http://www.codexis.com/role/FairValueMeasurements Fair Value Measurements Notes 14 false false R15.htm 9952164 - Disclosure - Balance Sheet Details Sheet http://www.codexis.com/role/BalanceSheetDetails Balance Sheet Details Notes 15 false false R16.htm 9952165 - Disclosure - Stock-based Compensation Sheet http://www.codexis.com/role/StockbasedCompensation Stock-based Compensation Notes 16 false false R17.htm 9952166 - Disclosure - Capital Stock Sheet http://www.codexis.com/role/CapitalStock Capital Stock Notes 17 false false R18.htm 9952167 - Disclosure - Commitments and Contingencies Sheet http://www.codexis.com/role/CommitmentsandContingencies Commitments and Contingencies Notes 18 false false R19.htm 9952168 - Disclosure - Debt Sheet http://www.codexis.com/role/Debt Debt Notes 19 false false R20.htm 9952169 - Disclosure - Segment, Geographical and Other Revenue Information Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation Segment, Geographical and Other Revenue Information Notes 20 false false R21.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 21 false false R22.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 22 false false R23.htm 9955511 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies) Sheet http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies Basis of Presentation and Summary of Significant Accounting Policies (Policies) Policies http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies 23 false false R24.htm 9955512 - Disclosure - Revenue Recognition (Tables) Sheet http://www.codexis.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.codexis.com/role/RevenueRecognition 24 false false R25.htm 9955513 - Disclosure - Net Loss per Share (Tables) Sheet http://www.codexis.com/role/NetLossperShareTables Net Loss per Share (Tables) Tables http://www.codexis.com/role/NetLossperShare 25 false false R26.htm 9955514 - Disclosure - Investments in Non-Marketable Securities (Tables) Sheet http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesTables Investments in Non-Marketable Securities (Tables) Tables http://www.codexis.com/role/InvestmentsinNonMarketableSecurities 26 false false R27.htm 9955515 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.codexis.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.codexis.com/role/FairValueMeasurements 27 false false R28.htm 9955516 - Disclosure - Balance Sheet Details (Tables) Sheet http://www.codexis.com/role/BalanceSheetDetailsTables Balance Sheet Details (Tables) Tables http://www.codexis.com/role/BalanceSheetDetails 28 false false R29.htm 9955517 - Disclosure - Stock-based Compensation (Tables) Sheet http://www.codexis.com/role/StockbasedCompensationTables Stock-based Compensation (Tables) Tables http://www.codexis.com/role/StockbasedCompensation 29 false false R30.htm 9955518 - Disclosure - Commitments and Contingencies (Tables) Sheet http://www.codexis.com/role/CommitmentsandContingenciesTables Commitments and Contingencies (Tables) Tables http://www.codexis.com/role/CommitmentsandContingencies 30 false false R31.htm 9955519 - Disclosure - Debt (Tables) Sheet http://www.codexis.com/role/DebtTables Debt (Tables) Tables http://www.codexis.com/role/Debt 31 false false R32.htm 9955520 - Disclosure - Segment, Geographical and Other Revenue Information (Tables) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables Segment, Geographical and Other Revenue Information (Tables) Tables http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation 32 false false R33.htm 9955521 - Disclosure - Description of Business (Details) Sheet http://www.codexis.com/role/DescriptionofBusinessDetails Description of Business (Details) Details http://www.codexis.com/role/DescriptionofBusiness 33 false false R34.htm 9955522 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details) Sheet http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails Revenue Recognition - Disaggregation of Revenue (Details) Details 34 false false R35.htm 9955523 - Disclosure - Revenue Recognition - Contracts with Customer (Details) Sheet http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails Revenue Recognition - Contracts with Customer (Details) Details 35 false false R36.htm 9955524 - Disclosure - Revenue Recognition - Narrative (Details) Sheet http://www.codexis.com/role/RevenueRecognitionNarrativeDetails Revenue Recognition - Narrative (Details) Details 36 false false R37.htm 9955525 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details) Sheet http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails Revenue Recognition - Revenue Recognized During Period (Details) Details 37 false false R38.htm 9955526 - Disclosure - Revenue Recognition - Performance Obligation (Details) Sheet http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails Revenue Recognition - Performance Obligation (Details) Details 38 false false R39.htm 9955527 - Disclosure - Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details) Sheet http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details) Details 39 false false R40.htm 9955528 - Disclosure - Investments in Non-Marketable Securities - Narrative (Details) Sheet http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesNarrativeDetails Investments in Non-Marketable Securities - Narrative (Details) Details 40 false false R41.htm 9955529 - Disclosure - Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details) Sheet http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details) Details 41 false false R42.htm 9955530 - Disclosure - Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details) Sheet http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details) Details 42 false false R43.htm 9955531 - Disclosure - Fair Value Measurements - Narrative (Details) Sheet http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails Fair Value Measurements - Narrative (Details) Details 43 false false R44.htm 9955532 - Disclosure - Balance Sheet Details - Inventories (Details) Sheet http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails Balance Sheet Details - Inventories (Details) Details 44 false false R45.htm 9955533 - Disclosure - Balance Sheet Details - Narrative (Details) Sheet http://www.codexis.com/role/BalanceSheetDetailsNarrativeDetails Balance Sheet Details - Narrative (Details) Details 45 false false R46.htm 9955534 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details) Sheet http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails Balance Sheet Details - Property and Equipment, net (Details) Details 46 false false R47.htm 9955535 - Disclosure - Balance Sheet Details - Other Accrued Liabilities (Details) Sheet http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails Balance Sheet Details - Other Accrued Liabilities (Details) Details 47 false false R48.htm 9955536 - Disclosure - Stock-based Compensation - Narrative (Details) Sheet http://www.codexis.com/role/StockbasedCompensationNarrativeDetails Stock-based Compensation - Narrative (Details) Details 48 false false R49.htm 9955537 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details) Sheet http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails Stock-based Compensation - Stock-based Compensation Expense (Details) Details 49 false false R50.htm 9955538 - Disclosure - Capital Stock (Details) Sheet http://www.codexis.com/role/CapitalStockDetails Capital Stock (Details) Details http://www.codexis.com/role/CapitalStock 50 false false R51.htm 9955539 - Disclosure - Commitments and Contingencies - Lease Cost (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails Commitments and Contingencies - Lease Cost (Details) Details 51 false false R52.htm 9955540 - Disclosure - Commitments and Contingencies - Other Lease Information (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails Commitments and Contingencies - Other Lease Information (Details) Details 52 false false R53.htm 9955541 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails Commitments and Contingencies - Cash Paid for Lease Obligations (Details) Details 53 false false R54.htm 9955542 - Disclosure - Commitments and Contingencies - Maturity Analysis of Operating Lease (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails Commitments and Contingencies - Maturity Analysis of Operating Lease (Details) Details 54 false false R55.htm 9955543 - Disclosure - Commitments and Contingencies - Narrative (Details) Sheet http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails Commitments and Contingencies - Narrative (Details) Details 55 false false R56.htm 9955544 - Disclosure - Debt - Narrative (Details) Sheet http://www.codexis.com/role/DebtNarrativeDetails Debt - Narrative (Details) Details 56 false false R57.htm 9955545 - Disclosure - Debt - Schedule of Long-Term Debt Instruments (Details) Sheet http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails Debt - Schedule of Long-Term Debt Instruments (Details) Details 57 false false R58.htm 9955546 - Disclosure - Debt - Schedule of Maturities of Long-Term Debt (Details) Sheet http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails Debt - Schedule of Maturities of Long-Term Debt (Details) Details 58 false false R59.htm 9955547 - Disclosure - Segment, Geographical and Other Revenue Information - Narrative (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationNarrativeDetails Segment, Geographical and Other Revenue Information - Narrative (Details) Details http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables 59 false false R60.htm 9955548 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails Segment, Geographical and Other Revenue Information - Concentration Risk (Details) Details 60 false false R61.htm 9955549 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) Sheet http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details) Details 61 false false All Reports Book All Reports cdxs-20250331.htm cdxs-20250331.xsd cdxs-20250331_cal.xml cdxs-20250331_def.xml cdxs-20250331_lab.xml cdxs-20250331_pre.xml http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 80 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cdxs-20250331.htm": { "nsprefix": "cdxs", "nsuri": "http://www.codexis.com/20250331", "dts": { "inline": { "local": [ "cdxs-20250331.htm" ] }, "schema": { "local": [ "cdxs-20250331.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/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/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/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "cdxs-20250331_cal.xml" ] }, "definitionLink": { "local": [ "cdxs-20250331_def.xml" ] }, "labelLink": { "local": [ "cdxs-20250331_lab.xml" ] }, "presentationLink": { "local": [ "cdxs-20250331_pre.xml" ] } }, "keyStandard": 247, "keyCustom": 26, "axisStandard": 25, "axisCustom": 0, "memberStandard": 37, "memberCustom": 26, "hidden": { "total": 11, "http://xbrl.sec.gov/dei/2024": 5, "http://fasb.org/us-gaap/2024": 5, "http://xbrl.sec.gov/ecd/2024": 1 }, "contextCount": 172, "entityCount": 1, "segmentCount": 64, "elementCount": 546, "unitCount": 6, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 567, "http://xbrl.sec.gov/dei/2024": 29, "http://xbrl.sec.gov/ecd/2024": 11 }, "report": { "R1": { "role": "http://www.codexis.com/role/CoverPage", "longName": "0000001 - Document - Cover Page", "shortName": "Cover Page", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "longName": "9952151 - Statement - Condensed Consolidated Balance Sheets (Unaudited)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:RestrictedCash", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R3": { "role": "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical", "longName": "9952152 - Statement - Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "shortName": "Condensed Consolidated Balance Sheets (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:PreferredStockParOrStatedValuePerShare", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "longName": "9952153 - Statement - Condensed Consolidated Statements of Operations (Unaudited)", "shortName": "Condensed Consolidated Statements of Operations (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R5": { "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited", "longName": "9952154 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Unaudited)", "shortName": "Condensed Consolidated Statements of Comprehensive Loss (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R6": { "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited", "longName": "9952155 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-22", "name": "us-gaap:SharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-22", "name": "us-gaap:SharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "longName": "9952156 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)", "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R8": { "role": "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsParenthetical", "longName": "9952157 - Statement - Condensed Consolidated Statements of Cash Flows (Parenthetical)", "shortName": "Condensed Consolidated Statements of Cash Flows (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ShortTermInvestments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-35", "name": "us-gaap:ShortTermInvestments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R9": { "role": "http://www.codexis.com/role/DescriptionofBusiness", "longName": "9952158 - Disclosure - Description of Business", "shortName": "Description of Business", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NatureOfOperations", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies", "longName": "9952159 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SignificantAccountingPoliciesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.codexis.com/role/RevenueRecognition", "longName": "9952160 - Disclosure - Revenue Recognition", "shortName": "Revenue Recognition", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.codexis.com/role/NetLossperShare", "longName": "9952161 - Disclosure - Net Loss per Share", "shortName": "Net Loss per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.codexis.com/role/InvestmentsinNonMarketableSecurities", "longName": "9952162 - Disclosure - Investments in Non-Marketable Securities", "shortName": "Investments in Non-Marketable Securities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.codexis.com/role/FairValueMeasurements", "longName": "9952163 - Disclosure - Fair Value Measurements", "shortName": "Fair Value Measurements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueMeasurementInputsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.codexis.com/role/BalanceSheetDetails", "longName": "9952164 - Disclosure - Balance Sheet Details", "shortName": "Balance Sheet Details", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "cdxs:BalanceSheetsDetailsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cdxs:BalanceSheetsDetailsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.codexis.com/role/StockbasedCompensation", "longName": "9952165 - Disclosure - Stock-based Compensation", "shortName": "Stock-based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.codexis.com/role/CapitalStock", "longName": "9952166 - Disclosure - Capital Stock", "shortName": "Capital Stock", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.codexis.com/role/CommitmentsandContingencies", "longName": "9952167 - Disclosure - Commitments and Contingencies", "shortName": "Commitments and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.codexis.com/role/Debt", "longName": "9952168 - Disclosure - Debt", "shortName": "Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation", "longName": "9952169 - Disclosure - Segment, Geographical and Other Revenue Information", "shortName": "Segment, Geographical and Other Revenue Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R21": { "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": "21", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": null }, "R22": { "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": "22", "firstAnchor": { "contextRef": "c-1", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies", "longName": "9955511 - Disclosure - Basis of Presentation and Summary of Significant Accounting Policies (Policies)", "shortName": "Basis of Presentation and Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "23", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.codexis.com/role/RevenueRecognitionTables", "longName": "9955512 - Disclosure - Revenue Recognition (Tables)", "shortName": "Revenue Recognition (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.codexis.com/role/NetLossperShareTables", "longName": "9955513 - Disclosure - Net Loss per Share (Tables)", "shortName": "Net Loss per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesTables", "longName": "9955514 - Disclosure - Investments in Non-Marketable Securities (Tables)", "shortName": "Investments in Non-Marketable Securities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.codexis.com/role/FairValueMeasurementsTables", "longName": "9955515 - Disclosure - Fair Value Measurements (Tables)", "shortName": "Fair Value Measurements (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.codexis.com/role/BalanceSheetDetailsTables", "longName": "9955516 - Disclosure - Balance Sheet Details (Tables)", "shortName": "Balance Sheet Details (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.codexis.com/role/StockbasedCompensationTables", "longName": "9955517 - Disclosure - Stock-based Compensation (Tables)", "shortName": "Stock-based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesTables", "longName": "9955518 - Disclosure - Commitments and Contingencies (Tables)", "shortName": "Commitments and Contingencies (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LeaseCostTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.codexis.com/role/DebtTables", "longName": "9955519 - Disclosure - Debt (Tables)", "shortName": "Debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables", "longName": "9955520 - Disclosure - Segment, Geographical and Other Revenue Information (Tables)", "shortName": "Segment, Geographical and Other Revenue Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.codexis.com/role/DescriptionofBusinessDetails", "longName": "9955521 - Disclosure - Description of Business (Details)", "shortName": "Description of Business (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": null }, "R34": { "role": "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "longName": "9955522 - Disclosure - Revenue Recognition - Disaggregation of Revenue (Details)", "shortName": "Revenue Recognition - Disaggregation of Revenue (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-36", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R35": { "role": "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails", "longName": "9955523 - Disclosure - Revenue Recognition - Contracts with Customer (Details)", "shortName": "Revenue Recognition - Contracts with Customer (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ContractWithCustomerAssetGrossCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:UnbilledContractsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R36": { "role": "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails", "longName": "9955524 - Disclosure - Revenue Recognition - Narrative (Details)", "shortName": "Revenue Recognition - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:ContractWithCustomerAssetCreditLossExpense", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerAssetCreditLossExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:ContractWithCustomerAssetCreditLossExpense", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails", "longName": "9955525 - Disclosure - Revenue Recognition - Revenue Recognized During Period (Details)", "shortName": "Revenue Recognition - Revenue Recognized During Period (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails", "longName": "9955526 - Disclosure - Revenue Recognition - Performance Obligation (Details)", "shortName": "Revenue Recognition - Performance Obligation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c-50", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-50", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails", "longName": "9955527 - Disclosure - Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details)", "shortName": "Net Loss per Share - Shares Not Included in Computation of Diluted Net Loss Per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesNarrativeDetails", "longName": "9955528 - Disclosure - Investments in Non-Marketable Securities - Narrative (Details)", "shortName": "Investments in Non-Marketable Securities - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c-1", "name": "cdxs:NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "cdxs:NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cdxs:NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "cdxs:NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails", "longName": "9955529 - Disclosure - Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details)", "shortName": "Investments in Non-Marketable Securities - Carrying Value of Non-marketable Equity Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails", "longName": "9955530 - Disclosure - Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details)", "shortName": "Fair Value Measurements - Summary of Financial Instruments Measured at Fair Value on a Recurring Basis (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:Cash", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:Cash", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsMeasuredOnRecurringBasisTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails", "longName": "9955531 - Disclosure - Fair Value Measurements - Narrative (Details)", "shortName": "Fair Value Measurements - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-102", "name": "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff", "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-102", "name": "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff", "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails", "longName": "9955532 - Disclosure - Balance Sheet Details - Inventories (Details)", "shortName": "Balance Sheet Details - Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:InventoryWorkInProcess", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:InventoryWorkInProcess", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.codexis.com/role/BalanceSheetDetailsNarrativeDetails", "longName": "9955533 - Disclosure - Balance Sheet Details - Narrative (Details)", "shortName": "Balance Sheet Details - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PrepaidExpenseCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:PrepaidExpenseCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "longName": "9955534 - Disclosure - Balance Sheet Details - Property and Equipment, net (Details)", "shortName": "Balance Sheet Details - Property and Equipment, net (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:PropertyPlantAndEquipmentGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:PropertyPlantAndEquipmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails", "longName": "9955535 - Disclosure - Balance Sheet Details - Other Accrued Liabilities (Details)", "shortName": "Balance Sheet Details - Other Accrued Liabilities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:PurchaseObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:PurchaseObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccruedLiabilitiesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "longName": "9955536 - Disclosure - Stock-based Compensation - Narrative (Details)", "shortName": "Stock-based Compensation - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "longName": "9955537 - Disclosure - Stock-based Compensation - Stock-based Compensation Expense (Details)", "shortName": "Stock-based Compensation - Stock-based Compensation Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-124", "name": "us-gaap:ShareBasedCompensation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R50": { "role": "http://www.codexis.com/role/CapitalStockDetails", "longName": "9955538 - Disclosure - Capital Stock (Details)", "shortName": "Capital Stock (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:StockIssuedDuringPeriodSharesStockOptionsExercised", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R51": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails", "longName": "9955539 - Disclosure - Commitments and Contingencies - Lease Cost (Details)", "shortName": "Commitments and Contingencies - Lease Cost (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails", "longName": "9955540 - Disclosure - Commitments and Contingencies - Other Lease Information (Details)", "shortName": "Commitments and Contingencies - Other Lease Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseWeightedAverageRemainingLeaseTerm1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails", "longName": "9955541 - Disclosure - Commitments and Contingencies - Cash Paid for Lease Obligations (Details)", "shortName": "Commitments and Contingencies - Cash Paid for Lease Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OperatingLeasePayments", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails", "longName": "9955542 - Disclosure - Commitments and Contingencies - Maturity Analysis of Operating Lease (Details)", "shortName": "Commitments and Contingencies - Maturity Analysis of Operating Lease (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R55": { "role": "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails", "longName": "9955543 - Disclosure - Commitments and Contingencies - Narrative (Details)", "shortName": "Commitments and Contingencies - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c-143", "name": "us-gaap:LossContingencyAccrualCarryingValueCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:LossContingencyAccrualCarryingValueCurrent", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-143", "name": "us-gaap:LossContingencyAccrualCarryingValueCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "us-gaap:LossContingencyAccrualCarryingValueCurrent", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.codexis.com/role/DebtNarrativeDetails", "longName": "9955544 - Disclosure - Debt - Narrative (Details)", "shortName": "Debt - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtInstrumentFaceAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cdxs:ClassOfWarrantOrRightFairValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R57": { "role": "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails", "longName": "9955545 - Disclosure - Debt - Schedule of Long-Term Debt Instruments (Details)", "shortName": "Debt - Schedule of Long-Term Debt Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtInstrumentFaceAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "cdxs:DebtInstrumentPaymentInKindInterest", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "unique": true } }, "R58": { "role": "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails", "longName": "9955546 - Disclosure - Debt - Schedule of Maturities of Long-Term Debt (Details)", "shortName": "Debt - Schedule of Maturities of Long-Term Debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationNarrativeDetails", "longName": "9955547 - Disclosure - Segment, Geographical and Other Revenue Information - Narrative (Details)", "shortName": "Segment, Geographical and Other Revenue Information - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "us-gaap:SegmentReportingPolicyPolicyTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true }, "uniqueAnchor": null }, "R60": { "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails", "longName": "9955548 - Disclosure - Segment, Geographical and Other Revenue Information - Concentration Risk (Details)", "shortName": "Segment, Geographical and Other Revenue Information - Concentration Risk (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "c-157", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-157", "name": "us-gaap:ConcentrationRiskPercentage1", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails", "longName": "9955549 - Disclosure - Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details)", "shortName": "Segment, Geographical and Other Revenue Information - Long-Lived Assets by Geographic Area (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "c-169", "name": "us-gaap:NoncurrentAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-169", "name": "us-gaap:NoncurrentAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cdxs-20250331.htm", "first": true, "unique": true } } }, "tag": { "cdxs_APACMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "APACMember", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "APAC", "label": "APAC [Member]", "documentation": "Regions of Australia, New Zealand, Southeast Asia and China" } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Accounting Policies [Abstract]", "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsNotesAndLoansReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsNotesAndLoansReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total financial assets, net", "label": "Accounts and Financing Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of accounts and financing receivables, classified as current. Includes, but is not limited to, notes and loan receivable." } } }, "auth_ref": [ "r964" ] }, "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable Type [Axis]", "label": "Receivable Type [Axis]", "documentation": "Information by type of receivable." } } }, "auth_ref": [ "r65", "r71" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r54", "r810" ] }, "us-gaap_AccountsReceivableGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableGrossCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable", "label": "Accounts Receivable, before Allowance for Credit Loss, Current", "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r172", "r269", "r749" ] }, "us-gaap_AccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts Receivable", "label": "Accounts Receivable [Member]", "documentation": "Due from customers or clients for goods or services that have been delivered or sold." } } }, "auth_ref": [ "r730" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 }, "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other accrued liabilities", "totalLabel": "Total other accrued liabilities", "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": [ "r56" ] }, "us-gaap_AccruedProfessionalFeesCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccruedProfessionalFeesCurrentAndNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued professional and outside service fees", "label": "Accrued Professional Fees", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for professional fees, such as for legal and accounting services received." } } }, "auth_ref": [ "r111" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less: accumulated depreciation and amortization", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r34", "r164", "r607" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive income", "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": [ "r13", "r14", "r75", "r175", "r604", "r633", "r634" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (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": [ "r1", "r8", "r14", "r480", "r483", "r525", "r629", "r630", "r942", "r943", "r944", "r953", "r954", "r955", "r956" ] }, "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": { "terseLabel": "Additional 402(v) Disclosure", "label": "Additional 402(v) Disclosure [Text Block]" } } }, "auth_ref": [ "r875" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Additional paid-in capital", "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": [ "r66", "r810", "r1060" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "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": [ "r646", "r953", "r954", "r955", "r956", "r996", "r1061" ] }, "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": { "terseLabel": "Adjustment to Compensation, Amount", "label": "Adjustment to Compensation Amount" } } }, "auth_ref": [ "r888" ] }, "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": { "terseLabel": "Adjustment to Compensation:", "label": "Adjustment to Compensation [Axis]" } } }, "auth_ref": [ "r888" ] }, "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": { "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote", "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]" } } }, "auth_ref": [ "r888" ] }, "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": { "terseLabel": "Adjustment To PEO Compensation, Footnote", "label": "Adjustment To PEO Compensation, Footnote [Text Block]" } } }, "auth_ref": [ "r888" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r46", "r47", "r424" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalWarrantIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalWarrantIssued", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock warrants in connection with debt issuance", "label": "Adjustments to Additional Paid in Capital, Warrant Issued", "documentation": "Amount of increase in additional paid in capital (APIC) resulting from the issuance of warrants. Includes allocation of proceeds of debt securities issued with detachable stock purchase warrants." } } }, "auth_ref": [ "r9", "r36", "r104" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Adjustments to reconcile net loss to net 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": { "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table", "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r921" ] }, "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": { "terseLabel": "Aggregate Erroneous Compensation Amount", "label": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r847", "r857", "r867", "r899" ] }, "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": { "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined", "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]" } } }, "auth_ref": [ "r850", "r860", "r870", "r902" ] }, "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": { "terseLabel": "Aggregate Pension Adjustments Service Cost", "label": "Aggregate Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r922" ] }, "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": { "terseLabel": "All Adjustments to Compensation", "label": "All Adjustments to Compensation [Member]" } } }, "auth_ref": [ "r888" ] }, "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": { "terseLabel": "All Executive Categories", "label": "All Executive Categories [Member]" } } }, "auth_ref": [ "r895" ] }, "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": { "terseLabel": "All Individuals", "label": "All Individuals [Member]" } } }, "auth_ref": [ "r851", "r861", "r871", "r895", "r903", "r907", "r915" ] }, "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": { "terseLabel": "All Trading Arrangements", "label": "All Trading Arrangements [Member]" } } }, "auth_ref": [ "r913" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based payment arrangement, expense", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r453", "r458" ] }, "us-gaap_AllowanceForNotesAndLoansReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForNotesAndLoansReceivableCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AccountsNotesAndLoansReceivableNetCurrent", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Less: allowances", "label": "Financing Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on financing receivable, classified as current." } } }, "auth_ref": [ "r176", "r270", "r305" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [] }, "srt_AmericasMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "AmericasMember", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Americas", "label": "Americas [Member]" } } }, "auth_ref": [ "r1063", "r1064", "r1065", "r1066" ] }, "cdxs_AmortizationOfDiscountOnShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "AmortizationOfDiscountOnShortTermInvestments", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of discount on short-term investments", "label": "Amortization Of Discount On Short-term Investments", "documentation": "Amortization Of Discount On Short-term Investments" } } }, "auth_ref": [] }, "us-gaap_AmortizationOfFinancingCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AmortizationOfFinancingCosts", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Non-cash interest expense", "label": "Amortization of Debt Issuance Costs", "documentation": "Amount of amortization expense attributable to debt issuance costs." } } }, "auth_ref": [ "r82", "r371", "r947", "r1008" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total shares excluded as anti-dilutive (in shares)", "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": [ "r228" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities [Axis]", "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r24" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareLineItems", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share [Line Items]", "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.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities, Name [Domain]", "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": [ "r24" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r109", "r122", "r167", "r204", "r232", "r239", "r256", "r259", "r302", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r475", "r477", "r504", "r599", "r677", "r761", "r762", "r810", "r838", "r986", "r987", "r1012" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Assets", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r160", "r180", "r204", "r302", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r475", "r477", "r504", "r810", "r986", "r987", "r1012" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax", "crdr": "credit", "calculation": { "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized Gains", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax", "documentation": "Amount, before tax, of unrealized gain in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r275" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "crdr": "debit", "calculation": { "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Unrealized Losses", "label": "Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax", "documentation": "Amount, before tax, of unrealized loss in accumulated other comprehensive income (AOCI) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r276" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "crdr": "debit", "calculation": { "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Amortized Cost", "label": "Debt Securities, Available-for-Sale, Amortized Cost", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r272", "r313", "r598" ] }, "us-gaap_AvailableForSaleDebtSecuritiesGrossUnrealizedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesGrossUnrealizedLoss", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other-than-temporary impairment losses", "label": "Debt Securities, Available-for-Sale, Unrealized Loss", "documentation": "Amount of unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r966" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value", "label": "Debt Securities, Available-for-Sale", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r273", "r313", "r491", "r592", "r797", "r801", "r965", "r1000", "r1001", "r1002" ] }, "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": { "terseLabel": "Exercise Price", "label": "Award Exercise Price" } } }, "auth_ref": [ "r910" ] }, "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": { "terseLabel": "Fair Value as of Grant Date", "label": "Award Grant Date Fair Value" } } }, "auth_ref": [ "r911" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "auth_ref": [ "r906" ] }, "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": { "terseLabel": "Award Timing, How MNPI Considered", "label": "Award Timing, How MNPI Considered [Text Block]" } } }, "auth_ref": [ "r906" ] }, "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": { "terseLabel": "Award Timing Method", "label": "Award Timing Method [Text Block]" } } }, "auth_ref": [ "r906" ] }, "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": { "terseLabel": "Award Timing MNPI Considered", "label": "Award Timing MNPI Considered [Flag]" } } }, "auth_ref": [ "r906" ] }, "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": { "terseLabel": "Award Timing MNPI Disclosure", "label": "Award Timing MNPI Disclosure [Text Block]" } } }, "auth_ref": [ "r906" ] }, "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": { "terseLabel": "Award Timing Predetermined", "label": "Award Timing Predetermined [Flag]" } } }, "auth_ref": [ "r906" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Axis]", "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452" ] }, "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": { "terseLabel": "Underlying Securities", "label": "Award Underlying Securities Amount" } } }, "auth_ref": [ "r909" ] }, "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": { "terseLabel": "Name", "label": "Awards Close in Time to MNPI Disclosures, Individual Name" } } }, "auth_ref": [ "r908" ] }, "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": { "terseLabel": "Awards Close in Time to MNPI Disclosures", "label": "Awards Close in Time to MNPI Disclosures [Table]" } } }, "auth_ref": [ "r907" ] }, "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": { "terseLabel": "Awards Close in Time to MNPI Disclosures, Table", "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]" } } }, "auth_ref": [ "r907" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location [Axis]", "label": "Statement of Financial Position Location, Balance [Axis]", "documentation": "Information by location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r328", "r1027", "r1028" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location [Domain]", "label": "Statement of Financial Position Location, Balance [Domain]", "documentation": "Location in statement of financial position where disaggregated cumulative balance has been reported." } } }, "auth_ref": [ "r49", "r50", "r328", "r1027", "r1028" ] }, "cdxs_BalanceSheetsDetailsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "BalanceSheetsDetailsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Balance Sheets Details [Abstract]", "label": "Balance Sheets Details [Abstract]", "documentation": "-- None. No documentation exists for this element. --" } } }, "auth_ref": [] }, "cdxs_BalanceSheetsDetailsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "BalanceSheetsDetailsTextBlock", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Balance Sheets Details", "label": "Balance Sheets Details [Text Block]", "documentation": "Balance sheets details." } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [] }, "cdxs_CantorMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CantorMember", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cantor", "label": "Cantor [Member]", "documentation": "Cantor" } } }, "auth_ref": [] }, "cdxs_CantorSalesAgreementMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CantorSalesAgreementMember", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cantor Sales Agreement", "label": "Cantor Sales Agreement [Member]", "documentation": "Cantor Sales Agreement" } } }, "auth_ref": [] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalExpendituresIncurredButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Capital expenditures incurred but not yet paid", "label": "Capital Expenditures Incurred but Not yet Paid", "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred." } } }, "auth_ref": [ "r21", "r22", "r23" ] }, "us-gaap_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Cash", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash", "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": [ "r126", "r601", "r647", "r672", "r810", "r838", "r937" ] }, "us-gaap_CashAndCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash reconciliation:", "label": "Cash and Cash Equivalents [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "weight": 1.0, "order": 2.0 }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Cash and cash equivalents", "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": [ "r19", "r162", "r747" ] }, "us-gaap_CashAndCashEquivalentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents", "label": "Cash and Cash Equivalents [Member]", "documentation": "Currency on hand as well as demand deposits with banks or financial institutions. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsAndShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsAndShortTermInvestments", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsParenthetical", "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total", "label": "Cash, Cash Equivalents, and Short-Term Investments", "documentation": "Cash includes currency on hand as well as demand deposits with banks or financial institutions. It also includes other kinds of accounts that have the general characteristics of demand deposits in that the customer may deposit additional funds at any time and effectively may withdraw funds at any time without prior notice or penalty. Cash equivalents, excluding items classified as marketable securities, include short-term, highly liquid Investments that are both readily convertible to known amounts of cash, and so near their maturity that they present minimal risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify under that definition. Original maturity means original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three years ago does not become a cash equivalent when its remaining maturity is three months. Short-term investments, exclusive of cash equivalents, generally consist of marketable securities intended to be sold within one year (or the normal operating cycle if longer) and may include trading securities, available-for-sale securities, or held-to-maturity securities (if maturing within one year), as applicable." } } }, "auth_ref": [ "r941" ] }, "cdxs_CashCashEquivalentsAndShortTermInvestmentsAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CashCashEquivalentsAndShortTermInvestmentsAmortizedCost", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total", "label": "Cash, Cash Equivalents And Short Term Investments, Amortized Cost", "documentation": "Cash, Cash Equivalents And Short Term Investments, Amortized Cost" } } }, "auth_ref": [] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash, cash equivalents and restricted cash at the beginning of the period", "periodEndLabel": "Cash, cash equivalents and restricted cash at the end of the period", "totalLabel": "Total cash, cash equivalents and restricted cash", "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": [ "r19", "r88", "r200" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net decrease in cash, cash equivalents and restricted cash", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash, cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; including effect from exchange rate change. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r0", "r88" ] }, "us-gaap_ChangeInContractWithCustomerAssetAndLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ChangeInContractWithCustomerAssetAndLiabilityAbstract", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amounts included in contract liabilities at the beginning of the period:", "label": "Change in Contract with Customer, Asset and Liability [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ChangeInContractWithCustomerLiabilityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ChangeInContractWithCustomerLiabilityAbstract", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in the period:", "label": "Change in Contract with Customer, Liability [Abstract]" } } }, "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": { "terseLabel": "Changed Peer Group, Footnote", "label": "Changed Peer Group, Footnote [Text Block]" } } }, "auth_ref": [ "r886" ] }, "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": { "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year", "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]" } } }, "auth_ref": [ "r883" ] }, "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": { "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested", "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r881" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfStockLineItems", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Line Items]", "label": "Class 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": [ "r169", "r170", "r171", "r234", "r381", "r382", "r383", "r385", "r388", "r393", "r395", "r641", "r642", "r643", "r644", "r779", "r925", "r949" ] }, "us-gaap_ClassOfWarrantOrRightAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightAxis", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Warrant or Right [Axis]", "label": "Class of Warrant or Right [Axis]", "documentation": "Information by type of warrant or right issued." } } }, "auth_ref": [ "r43" ] }, "us-gaap_ClassOfWarrantOrRightDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightDomain", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Warrant or Right [Domain]", "label": "Class of Warrant or Right [Domain]", "documentation": "Name of the class or type of warrant or right outstanding. Warrants and rights represent derivative securities that give the holder the right to purchase securities (usually equity) from the issuer at a specific price within a certain time frame. Warrants are often included in a new debt issue to entice investors by a higher return potential. The main difference between warrants and call options is that warrants are issued and guaranteed by the company, whereas options are exchange instruments and are not issued by the company. Also, the lifetime of a warrant is often measured in years, while the lifetime of a typical option is measured in months." } } }, "auth_ref": [] }, "us-gaap_ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightExercisePriceOfWarrantsOrRights1", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of warrant or right, exercise price of warrants or rights (in dollars per share)", "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": [ "r396" ] }, "cdxs_ClassOfWarrantOrRightFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ClassOfWarrantOrRightFairValue", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of warrant or right, fair value", "label": "Class Of Warrant Or Right, Fair Value", "documentation": "Class Of Warrant Or Right, Fair Value" } } }, "auth_ref": [] }, "us-gaap_ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfWarrantOrRightNumberOfSecuritiesCalledByWarrantsOrRights", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of warrant or right, number of securities called by warrants or rights (in shares)", "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": [ "r396" ] }, "cdxs_ClassOfWarrantOrRightWarrantTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ClassOfWarrantOrRightWarrantTerm", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of warrant or right, warrant term", "label": "Class Of Warrant Or Right, Warrant Term", "documentation": "Class Of Warrant Or Right, Warrant Term" } } }, "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": { "terseLabel": "Company Selected Measure Amount", "label": "Company Selected Measure Amount" } } }, "auth_ref": [ "r887" ] }, "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": { "terseLabel": "Company Selected Measure Name", "label": "Company Selected Measure Name" } } }, "auth_ref": [ "r887" ] }, "us-gaap_CommercialPaperMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommercialPaperMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Commercial paper", "label": "Commercial Paper [Member]", "documentation": "Unsecured promissory note (generally negotiable) that provides institutions with short-term funds." } } }, "auth_ref": [ "r98", "r339", "r833", "r834", "r835", "r836" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Commitments and Contingencies (Note 10)", "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": [ "r61", "r113", "r600", "r663" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "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.codexis.com/role/CommitmentsandContingencies" ], "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": [ "r96", "r330", "r331", "r731", "r975", "r980" ] }, "us-gaap_CommonStockCapitalSharesReservedForFutureIssuance": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockCapitalSharesReservedForFutureIssuance", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares reserved for future issuance (in shares)", "label": "Common Stock, Capital Shares Reserved for Future Issuance", "documentation": "Aggregate number of common shares reserved for future issuance." } } }, "auth_ref": [ "r64" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "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": [ "r829", "r830", "r831", "r833", "r834", "r835", "r836", "r953", "r954", "r956", "r996", "r1059", "r1061" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "verboseLabel": "Common stock, par value (in dollars per share)", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r64" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares authorized (in shares)", "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": [ "r64", "r664" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares, issued (in shares)", "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": [ "r64" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares outstanding (in shares)", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r9", "r64", "r664", "r683", "r1061", "r1062" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Common stock, $0.0001 par value per share; 200,000 shares authorized; 82,841 shares and 81,850 shares issued and outstanding as of March\u00a031, 2025 and December\u00a031, 2024, respectively", "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": [ "r64", "r603", "r810" ] }, "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": { "terseLabel": "Compensation Actually Paid vs. Company Selected Measure", "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]" } } }, "auth_ref": [ "r892" ] }, "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": { "terseLabel": "Compensation Actually Paid vs. Net Income", "label": "Compensation Actually Paid vs. Net Income [Text Block]" } } }, "auth_ref": [ "r891" ] }, "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": { "terseLabel": "Compensation Actually Paid vs. Other Measure", "label": "Compensation Actually Paid vs. Other Measure [Text Block]" } } }, "auth_ref": [ "r893" ] }, "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": { "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return", "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]" } } }, "auth_ref": [ "r890" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "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": [ "r15", "r186", "r188", "r192", "r593", "r613", "r614" ] }, "us-gaap_ComputerEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComputerEquipmentMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Computer equipment and software", "label": "Computer Equipment [Member]", "documentation": "Long lived, depreciable assets that are used in the creation, maintenance and utilization of information systems." } } }, "auth_ref": [] }, "us-gaap_ConcentrationRiskBenchmarkDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskBenchmarkDomain", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Benchmark [Domain]", "label": "Concentration Risk Benchmark [Domain]", "documentation": "The denominator in a calculation of a disclosed concentration risk percentage." } } }, "auth_ref": [ "r26", "r27", "r51", "r52", "r267", "r730" ] }, "us-gaap_ConcentrationRiskByBenchmarkAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskByBenchmarkAxis", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Benchmark [Axis]", "label": "Concentration Risk Benchmark [Axis]", "documentation": "Information by benchmark of concentration risk." } } }, "auth_ref": [ "r26", "r27", "r51", "r52", "r267", "r636", "r730" ] }, "us-gaap_ConcentrationRiskByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskByTypeAxis", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Type [Axis]", "label": "Concentration Risk Type [Axis]", "documentation": "Information by type of concentration risk, for example, but not limited to, asset, liability, net assets, geographic, customer, employees, supplier, lender." } } }, "auth_ref": [ "r26", "r27", "r51", "r52", "r267", "r730", "r928" ] }, "us-gaap_ConcentrationRiskLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskLineItems", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk [Line Items]", "label": "Concentration Risk [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": [ "r730" ] }, "us-gaap_ConcentrationRiskPercentage1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskPercentage1", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration risk, percentage", "label": "Concentration Risk, Percentage", "documentation": "For an entity that discloses a concentration risk in relation to quantitative amount, which serves as the \"benchmark\" (or denominator) in the equation, this concept represents the concentration percentage derived from the division." } } }, "auth_ref": [ "r26", "r27", "r51", "r52", "r267" ] }, "us-gaap_ConcentrationRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskTable", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk [Table]", "label": "Concentration Risk [Table]", "documentation": "Disclosure of information about concentration risk. Includes, but is not limited to, percentage of concentration risk and benchmark serving as denominator in calculation of percentage of concentration risk." } } }, "auth_ref": [ "r25", "r26", "r27", "r28", "r51", "r107", "r730" ] }, "us-gaap_ConcentrationRiskTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConcentrationRiskTypeDomain", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Concentration Risk Type [Domain]", "label": "Concentration Risk Type [Domain]", "documentation": "For an entity that discloses a concentration risk as a percentage of some financial balance or benchmark, identifies the type (for example, asset, liability, net assets, geographic, customer, employees, supplier, lender) of the concentration." } } }, "auth_ref": [ "r26", "r27", "r51", "r52", "r267", "r730" ] }, "us-gaap_ConsolidationPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConsolidationPolicyTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation", "label": "Consolidation, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy regarding (1) the principles it follows in consolidating or combining the separate financial statements, including the principles followed in determining the inclusion or exclusion of subsidiaries or other entities in the consolidated or combined financial statements and (2) its treatment of interests (for example, common stock, a partnership interest or other means of exerting influence) in other entities, for example consolidation or use of the equity or cost methods of accounting. The accounting policy may also address the accounting treatment for intercompany accounts and transactions, noncontrolling interest, and the income statement treatment in consolidation for issuances of stock by a subsidiary." } } }, "auth_ref": [ "r48", "r751" ] }, "us-gaap_ConstructionInProgressMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConstructionInProgressMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Construction in progress", "label": "Construction in Progress [Member]", "documentation": "Structure or a modification to a structure under construction. Includes recently completed structures or modifications to structures that have not been placed into service." } } }, "auth_ref": [] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Contract with Customer", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r992" ] }, "us-gaap_ContractWithCustomerAssetCreditLossExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetCreditLossExpense", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Impairment charges related to contract assets", "label": "Contract with Customer, Asset, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time." } } }, "auth_ref": [ "r308", "r409", "r781" ] }, "us-gaap_ContractWithCustomerAssetGrossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetGrossCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract assets", "label": "Contract with Customer, Asset, before Allowance for Credit Loss, Current", "documentation": "Amount, before allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current." } } }, "auth_ref": [ "r990", "r991" ] }, "us-gaap_ContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiability", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Contract liabilities: deferred revenue", "label": "Contract with Customer, Liability", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r398", "r399", "r411" ] }, "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "crdr": "credit", "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total revenues", "label": "Contract with Customer, Liability, Change in Timeframe, Performance Obligation Satisfied, Revenue Recognized", "documentation": "Amount of revenue recognized arising from contract liability from change in timeframe for performance obligation to be satisfied." } } }, "auth_ref": [ "r782" ] }, "us-gaap_ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCumulativeCatchUpAdjustmentToRevenueChangeInEstimateOfTransactionPrice", "crdr": "credit", "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "parentTag": "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods", "label": "Contract with Customer, Liability, Cumulative Catch-up Adjustment to Revenue, Change in Estimate of Transaction Price", "documentation": "Amount of increase (decrease) in revenue recognized for cumulative catch-up adjustment from change in estimate of transaction price which (increases) decreases obligation to transfer good or service to customer for which consideration from customer has been received or is due. Includes, but is not limited to, change in assessment of whether estimate of variable consideration is constrained." } } }, "auth_ref": [ "r780" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "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": [ "r398", "r399", "r411" ] }, "us-gaap_ContractWithCustomerLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred revenue, net of current portion", "label": "Contract with Customer, Liability, Noncurrent", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as noncurrent." } } }, "auth_ref": [ "r398", "r399", "r411" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "parentTag": "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Performance obligations satisfied", "label": "Contract with Customer, Liability, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due." } } }, "auth_ref": [ "r412" ] }, "cdxs_ContractwithCustomerLiabilityNewActivitiesPerformanceObligationSatisfiedRevenueRecognition": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ContractwithCustomerLiabilityNewActivitiesPerformanceObligationSatisfiedRevenueRecognition", "crdr": "credit", "calculation": { "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails": { "parentTag": "us-gaap_ContractWithCustomerLiabilityChangeInTimeframePerformanceObligationSatisfiedRevenueRecognized", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/RevenueRecognitionRevenueRecognizedDuringPeriodDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Performance obligations satisfied from new activities in the period - contract revenue", "label": "Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition", "documentation": "Contract with Customer, Liability, New Activities, Performance Obligation Satisfied, Revenue Recognition" } } }, "auth_ref": [] }, "us-gaap_ConvertibleDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ConvertibleDebtMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Convertible Debt", "label": "Convertible Debt [Member]", "documentation": "Borrowing which can be exchanged for a specified number of another security at the option of the issuer or the holder, for example, but not limited to, the entity's common stock." } } }, "auth_ref": [ "r99", "r350", "r351", "r361", "r362", "r363", "r367", "r368", "r369", "r370", "r371", "r774", "r775", "r776", "r777", "r778" ] }, "us-gaap_CorporateDebtSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateDebtSecuritiesMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Corporate debt", "label": "Corporate Debt Securities [Member]", "documentation": "Debt securities issued by domestic or foreign corporate business, banks and other entities with a promise of repayment." } } }, "auth_ref": [ "r790", "r792", "r797", "r811", "r827", "r1056" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of product 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": [ "r78", "r79", "r560" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfSalesMember", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of product revenue", "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "us-gaap_CostsAndExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostsAndExpenses", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total costs and operating expenses", "label": "Costs and Expenses", "documentation": "Total costs of sales and operating expenses for the period." } } }, "auth_ref": [ "r84" ] }, "cdxs_CostsIncurredInConnectionWithEquitySalesAgreements": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CostsIncurredInConnectionWithEquitySalesAgreements", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Costs incurred in connection with equity sales agreements", "label": "Costs Incurred In Connection With Equity Sales Agreements", "documentation": "Costs Incurred In Connection With Equity Sales Agreements" } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover page.", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [] }, "cdxs_CustomerAMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerAMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer A", "label": "Customer A [Member]", "documentation": "Customer A [Member]" } } }, "auth_ref": [] }, "cdxs_CustomerBMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerBMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer B", "label": "Customer B [Member]", "documentation": "Customer B [Member]" } } }, "auth_ref": [] }, "cdxs_CustomerCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerCMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer C", "label": "Customer C [Member]", "documentation": "Customer C [Member]" } } }, "auth_ref": [] }, "us-gaap_CustomerConcentrationRiskMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CustomerConcentrationRiskMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer Concentration Risk", "label": "Customer Concentration Risk [Member]", "documentation": "Reflects the percentage that revenues in the period from one or more significant customers is to net revenues, as defined by the entity, such as total net revenues, product line revenues, segment revenues. The risk is the materially adverse effects of loss of a significant customer." } } }, "auth_ref": [ "r92", "r267" ] }, "cdxs_CustomerDMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerDMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer D", "label": "Customer D [Member]", "documentation": "Customer D [Member]" } } }, "auth_ref": [] }, "cdxs_CustomerEMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerEMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer E", "label": "Customer E [Member]", "documentation": "Customer E" } } }, "auth_ref": [] }, "cdxs_CustomerFMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerFMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer F", "label": "Customer F [Member]", "documentation": "Customer F" } } }, "auth_ref": [] }, "cdxs_CustomerGMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "CustomerGMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer G", "label": "Customer G [Member]", "documentation": "Customer G" } } }, "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.codexis.com/role/Debt" ], "lang": { "en-us": { "role": { "terseLabel": "Debt", "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r97", "r202", "r323", "r324", "r325", "r326", "r327", "r338", "r339", "r349", "r355", "r356", "r357", "r358", "r359", "r360", "r365", "r372", "r373", "r375", "r511" ] }, "cdxs_DebtInstrumentAmortizedExitFee": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentAmortizedExitFee", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 4.0 }, "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails", "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Add: amortized exit fee", "label": "Debt Instrument, Amortized Exit Fee", "documentation": "Debt Instrument, Amortized Exit Fee" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Axis]", "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r11", "r55", "r56", "r110", "r112", "r205", "r350", "r351", "r352", "r353", "r354", "r356", "r361", "r362", "r363", "r364", "r366", "r367", "r368", "r369", "r370", "r371", "r774", "r775", "r776", "r777", "r778", "r808", "r950", "r976", "r977", "r978", "r1007", "r1009" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basis spread on variable rate", "label": "Debt Instrument, Basis Spread on Variable Rate", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentCarryingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentCarryingAmount", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total principal payments", "label": "Long-Term Debt, Gross", "documentation": "Amount, before unamortized (discount) premium and debt issuance costs, of long-term debt. Includes, but is not limited to, notes payable, bonds payable, commercial loans, mortgage loans, convertible debt, subordinated debt and other types of debt." } } }, "auth_ref": [ "r11", "r112", "r376" ] }, "cdxs_DebtInstrumentExitFeePercent": { "xbrltype": "pureItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentExitFeePercent", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Prepayment, aggregate principal amount, percentage", "label": "Debt Instrument, Exit Fee, Percent", "documentation": "Debt Instrument, Exit Fee, Percent" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails", "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Face value of debt", "label": "Debt Instrument, Face Amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r350", "r511", "r512", "r775", "r776", "r808" ] }, "cdxs_DebtInstrumentFacilityFeePercent": { "xbrltype": "percentItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentFacilityFeePercent", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, facility fee, percent", "label": "Debt Instrument, Facility Fee, Percent", "documentation": "Debt Instrument, Facility Fee, Percent" } } }, "auth_ref": [] }, "cdxs_DebtInstrumentInterestPaidInKind": { "xbrltype": "pureItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentInterestPaidInKind", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, interest, paid in kind", "label": "Debt Instrument, Interest, Paid In Kind", "documentation": "Debt Instrument, Interest, Paid In Kind" } } }, "auth_ref": [] }, "cdxs_DebtInstrumentInterestPayableTerm": { "xbrltype": "durationItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentInterestPayableTerm", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, interest payable, term", "label": "Debt Instrument, Interest Payable, Term", "documentation": "Debt Instrument, Interest Payable, Term" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentInterestRateEffectivePercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentInterestRateEffectivePercentage", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, interest rate, effective percentage", "label": "Debt Instrument, Interest Rate, Effective Percentage", "documentation": "Effective interest rate for the funds borrowed under the debt agreement considering interest compounding and original issue discount or premium." } } }, "auth_ref": [ "r58", "r378", "r511", "r512", "r808" ] }, "us-gaap_DebtInstrumentInterestRateStatedPercentage": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentInterestRateStatedPercentage", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest rate, stated percentage", "label": "Debt Instrument, Interest Rate, Stated Percentage", "documentation": "Contractual interest rate for funds borrowed, under the debt agreement." } } }, "auth_ref": [ "r58", "r351" ] }, "us-gaap_DebtInstrumentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentLineItems", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "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": [ "r205", "r350", "r351", "r352", "r353", "r354", "r356", "r361", "r362", "r363", "r364", "r366", "r367", "r368", "r369", "r370", "r371", "r374", "r774", "r775", "r776", "r777", "r778", "r808", "r950", "r1007", "r1009" ] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Name [Domain]", "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r11", "r205", "r350", "r351", "r352", "r353", "r354", "r356", "r361", "r362", "r363", "r364", "r366", "r367", "r368", "r369", "r370", "r371", "r774", "r775", "r776", "r777", "r778", "r808", "r950", "r976", "r977", "r978", "r1007", "r1009" ] }, "cdxs_DebtInstrumentNumberOfTranches": { "xbrltype": "integerItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentNumberOfTranches", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, number of tranches", "label": "Debt Instrument, Number Of Tranches", "documentation": "Debt Instrument, Number Of Tranches" } } }, "auth_ref": [] }, "cdxs_DebtInstrumentPaymentInKindInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentPaymentInKindInterest", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Add: payment in-kind interest", "label": "Debt Instrument, Payment In-kind Interest", "documentation": "Debt Instrument, Payment In-kind Interest" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTable", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Long-Term Debt Instruments [Table]", "label": "Schedule of Long-Term Debt Instruments [Table]", "documentation": "Disclosure of information about long-term debt instrument or arrangement." } } }, "auth_ref": [ "r11", "r39", "r42", "r53", "r102", "r103", "r205", "r350", "r351", "r352", "r353", "r354", "r356", "r361", "r362", "r363", "r364", "r366", "r367", "r368", "r369", "r370", "r371", "r374", "r774", "r775", "r776", "r777", "r778", "r808", "r950", "r1007", "r1009" ] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, term", "label": "Debt Instrument, Term", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentUnamortizedDiscount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentUnamortizedDiscount", "crdr": "debit", "calculation": { "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 2.0 }, "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails", "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails", "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument, unamortized discount", "negatedTerseLabel": "Less: unamortized debt discount", "label": "Debt Instrument, Unamortized Discount", "documentation": "Amount, after accumulated amortization, of debt discount." } } }, "auth_ref": [ "r989", "r1006", "r1007", "r1009" ] }, "cdxs_DebtInstrumentUncapitalizedPaymentInKindInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "DebtInstrumentUncapitalizedPaymentInKindInterest", "crdr": "debit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Less: uncapitalized payment in-kind interest", "label": "Debt Instrument, Uncapitalized Payment In-kind Interest", "documentation": "Debt Instrument, Uncapitalized Payment In-kind Interest" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleAllowanceForCreditLossWriteoff", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit losses", "label": "Debt Securities, Available-for-Sale, Allowance for Credit Loss, Writeoff", "documentation": "Amount of writeoff of allowance for credit loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r317" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Depreciation", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total 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": [ "r5", "r33" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r5", "r232", "r243", "r259", "r761", "r762" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue [Line Items]", "label": "Disaggregation of Revenue [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": [ "r410", "r783", "r784", "r785", "r786", "r787", "r788", "r789" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails", "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue [Table]", "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r410", "r783", "r784", "r785", "r786", "r787", "r788", "r789" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue", "label": "Disaggregation of Revenue [Table Text Block]", "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r993" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.codexis.com/role/StockbasedCompensation" ], "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": [ "r422", "r426", "r454", "r455", "r457", "r794" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "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.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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": [ "r842" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r874" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": { "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year", "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]" } } }, "auth_ref": [ "r885" ] }, "us-gaap_EMEAMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EMEAMember", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "EMEA", "label": "EMEA [Member]", "documentation": "Regions of Europe, Middle East and Africa." } } }, "auth_ref": [ "r1063", "r1064", "r1065", "r1066" ] }, "cdxs_EarlyRepaymentFeePercentage": { "xbrltype": "pureItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "EarlyRepaymentFeePercentage", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Early repayment fee, percentage", "label": "Early Repayment Fee, Percentage", "documentation": "Early Repayment Fee, Percentage" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share [Abstract]", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net loss per share, basic (in dollars per share)", "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": [ "r193", "r211", "r212", "r213", "r214", "r215", "r216", "r221", "r223", "r225", "r226", "r227", "r231", "r471", "r474", "r488", "r489", "r594", "r615", "r753" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Net loss per share, diluted (in dollars per share)", "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": [ "r193", "r211", "r212", "r213", "r214", "r215", "r216", "r223", "r225", "r226", "r227", "r231", "r471", "r474", "r488", "r489", "r594", "r615", "r753" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.codexis.com/role/NetLossperShare" ], "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": [ "r220", "r228", "r229", "r230" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued compensation", "label": "Employee-related Liabilities, Current", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r56" ] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "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_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based payment arrangement, nonvested award, cost not yet recognized, amount", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount", "documentation": "Amount of cost not yet recognized for nonvested award under share-based payment arrangement." } } }, "auth_ref": [ "r456" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation not yet recognized, share-based awards other than options", "label": "Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount", "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r995" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedStockOptions", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation not yet recognized, stock options", "label": "Share-Based Payment Arrangement, Nonvested Award, Option, Cost Not yet Recognized, Amount", "documentation": "Amount of cost to be recognized for option under share-based payment arrangement." } } }, "auth_ref": [ "r995" ] }, "us-gaap_EmployeeStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockMember", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails", "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "ESPP", "label": "Employee Stock [Member]", "documentation": "An Employee Stock Purchase Plan is a tax-efficient means by which employees of a corporation can purchase the corporation's stock." } } }, "auth_ref": [] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock options", "verboseLabel": "Stock options", "label": "Share-Based Payment Arrangement, Option [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.codexis.com/role/CoverPage" ], "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_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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_EntityDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityDomain", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Entity [Domain]", "label": "Entity [Domain]", "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r840" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Entity File Number", "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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.codexis.com/role/CoverPage" ], "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": [ "r924" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r840" ] }, "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": { "terseLabel": "Equity Awards Adjustments, Footnote", "label": "Equity Awards Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r879" ] }, "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": { "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table", "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]" } } }, "auth_ref": [ "r920" ] }, "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": { "terseLabel": "Equity Awards Adjustments", "label": "Equity Awards Adjustments [Member]" } } }, "auth_ref": [ "r920" ] }, "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": { "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table", "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r920" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Equity [Abstract]", "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component [Domain]", "label": "Equity Component [Domain]", "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc." } } }, "auth_ref": [ "r9", "r158", "r189", "r190", "r191", "r206", "r207", "r208", "r210", "r215", "r217", "r219", "r233", "r303", "r304", "r321", "r397", "r465", "r466", "r468", "r469", "r470", "r472", "r473", "r474", "r479", "r480", "r481", "r482", "r483", "r484", "r487", "r505", "r506", "r507", "r508", "r509", "r510", "r513", "r514", "r525", "r611", "r629", "r630", "r631", "r646", "r703" ] }, "us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquitySecuritiesWithoutReadilyDeterminableFairValueAmount", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total non-marketable equity securities", "label": "Equity Securities without Readily Determinable Fair Value, Amount", "documentation": "Amount of investment in equity security without readily determinable fair value." } } }, "auth_ref": [ "r301" ] }, "us-gaap_EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquitySecuritiesWithoutReadilyDeterminableFairValueTableTextBlock", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Carrying Value of Non-marketable Equity Securities", "label": "Equity Securities without Readily Determinable Fair Value [Table Text Block]", "documentation": "Tabular disclosure of investment in equity security without readily determinable fair value." } } }, "auth_ref": [ "r968", "r969", "r970" ] }, "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": { "terseLabel": "Equity Valuation Assumption Difference, Footnote", "label": "Equity Valuation Assumption Difference, Footnote [Text Block]" } } }, "auth_ref": [ "r889" ] }, "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": { "terseLabel": "Erroneous Compensation Analysis", "label": "Erroneous Compensation Analysis [Text Block]" } } }, "auth_ref": [ "r847", "r857", "r867", "r899" ] }, "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": { "terseLabel": "Erroneously Awarded Compensation Recovery", "label": "Erroneously Awarded Compensation Recovery [Table]" } } }, "auth_ref": [ "r844", "r854", "r864", "r896" ] }, "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": { "terseLabel": "Executive Category:", "label": "Executive Category [Axis]" } } }, "auth_ref": [ "r895" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails", "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [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": [ "r491", "r492", "r499", "r797" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails", "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Table]", "label": "Fair Value, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r491", "r492", "r499", "r797" ] }, "us-gaap_FairValueAssetsMeasuredOnRecurringBasisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsMeasuredOnRecurringBasisTextBlock", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Fair Value, Assets Measured on Recurring Basis", "label": "Fair Value, Assets Measured on Recurring Basis [Table Text Block]", "documentation": "Tabular disclosure of assets, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, by class that are measured at fair value on a recurring basis. The disclosures contemplated herein include the fair value measurements at the reporting date by the level within the fair value hierarchy in which the fair value measurements in their entirety fall, segregating fair value measurements using quoted prices in active markets for identical assets (Level 1), significant other observable inputs (Level 2), and significant unobservable inputs (Level 3)." } } }, "auth_ref": [ "r998", "r999" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Axis]", "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r363", "r415", "r416", "r417", "r418", "r419", "r420", "r490", "r492", "r493", "r494", "r495", "r498", "r499", "r501", "r529", "r530", "r531", "r775", "r776", "r790", "r791", "r792", "r797", "r801" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "terseLabel": "Fair Value Disclosures [Abstract]", "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Inputs, Level 1", "label": "Fair Value, Inputs, Level 1 [Member]", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r363", "r415", "r420", "r492", "r499", "r529", "r790", "r791", "r792", "r797" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Inputs, Level 2", "label": "Fair Value, Inputs, Level 2 [Member]", "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets." } } }, "auth_ref": [ "r363", "r415", "r420", "r492", "r493", "r499", "r530", "r775", "r776", "r790", "r791", "r792", "r797" ] }, "us-gaap_FairValueMeasurementInputsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementInputsDisclosureTextBlock", "presentation": [ "http://www.codexis.com/role/FairValueMeasurements" ], "lang": { "en-us": { "role": { "verboseLabel": "Fair Value Measurements", "label": "Fair Value Measurement and Measurement Inputs, Recurring and Nonrecurring [Text Block]", "documentation": "The entire disclosure of the fair value measurement of assets and liabilities, which includes financial instruments measured at fair value that are classified in shareholders' equity, which may be measured on a recurring or nonrecurring basis." } } }, "auth_ref": [ "r106" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Measurements, Fair Value Hierarchy [Domain]", "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r363", "r415", "r416", "r417", "r418", "r419", "r420", "r490", "r492", "r493", "r494", "r495", "r498", "r499", "r501", "r529", "r530", "r531", "r775", "r776", "r790", "r791", "r792", "r797", "r801" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r306", "r307", "r309", "r310", "r311", "r314", "r315", "r316", "r374", "r393", "r485", "r502", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r612", "r771", "r797", "r799", "r801", "r802", "r803", "r804", "r805", "r806", "r807", "r811", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r967", "r968", "r969", "r970", "r997", "r1000", "r1001", "r1002", "r1003", "r1004" ] }, "us-gaap_FinancingReceivableBeforeAllowanceForCreditLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancingReceivableBeforeAllowanceForCreditLossAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Financial assets:", "label": "Financing Receivable, before Allowance for Credit Loss [Abstract]" } } }, "auth_ref": [] }, "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": { "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r851", "r861", "r871", "r903" ] }, "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": { "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount", "label": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r851", "r861", "r871", "r903" ] }, "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": { "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount", "label": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r851", "r861", "r871", "r903" ] }, "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": { "terseLabel": "Forgone Recovery, Explanation of Impracticability", "label": "Forgone Recovery, Explanation of Impracticability [Text Block]" } } }, "auth_ref": [ "r851", "r861", "r871", "r903" ] }, "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": { "terseLabel": "Name", "label": "Forgone Recovery, Individual Name" } } }, "auth_ref": [ "r851", "r861", "r871", "r903" ] }, "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": { "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year", "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]" } } }, "auth_ref": [ "r884" ] }, "us-gaap_GeographicAreasLongLivedAssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeographicAreasLongLivedAssetsAbstract", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographic Areas, Long-Lived Assets [Abstract]", "label": "Geographic Areas, Long-Lived Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GeographicDistributionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeographicDistributionAxis", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographic Distribution [Axis]", "label": "Geographic Distribution [Axis]", "documentation": "Information by geographic distribution of business activity identified as either domestic or foreign. Excludes names of countries, states and provinces, and cities." } } }, "auth_ref": [ "r138", "r139", "r140", "r141", "r142", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r152", "r153", "r154", "r155", "r156", "r157", "r595", "r596", "r768" ] }, "us-gaap_GeographicDistributionDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GeographicDistributionDomain", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographic Distribution [Domain]", "label": "Geographic Distribution [Domain]", "documentation": "Allocation of business activity identified as domestic or foreign. Excludes names of countries, states and provinces, and cities." } } }, "auth_ref": [ "r138", "r139", "r140", "r141", "r142", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r152", "r153", "r154", "r155", "r156", "r157", "r595", "r596" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill", "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": [ "r165", "r320", "r591", "r762", "r772", "r798", "r810", "r973", "r974" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Loss before income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest." } } }, "auth_ref": [ "r77", "r117", "r121", "r596", "r609", "r755", "r761", "r958", "r960", "r961", "r962", "r963" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Axis]", "label": "Statement of Income Location, Balance [Axis]", "documentation": "Information by location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r322", "r328", "r329", "r496", "r497", "r500", "r626", "r628", "r688", "r743", "r800", "r1029" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Domain]", "label": "Statement of Income Location, Balance [Domain]", "documentation": "Location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r328", "r329", "r496", "r497", "r500", "r626", "r628", "r688", "r743", "r800", "r1029" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Provision for 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": [ "r125", "r135", "r218", "r219", "r232", "r244", "r259", "r461", "r462", "r467", "r617", "r796" ] }, "us-gaap_IncomeTaxesPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxesPaidNet", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Income taxes paid", "label": "Income Taxes Paid, Net", "documentation": "Amount, after refund, of cash paid to foreign, federal, state, and local jurisdictions as income tax." } } }, "auth_ref": [ "r20", "r199", "r463", "r464" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "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": [ "r4" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue", "label": "Increase (Decrease) in Contract with Customer, Liability", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r558", "r946" ] }, "cdxs_IncreaseDecreaseInEmployeeRelatedLiabilitiesAndOtherAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "IncreaseDecreaseInEmployeeRelatedLiabilitiesAndOtherAccruedLiabilities", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 15.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Accrued compensation and other accrued liabilities", "label": "Increase (Decrease) in Employee Related Liabilities and Other Accrued Liabilities", "documentation": "Increase (Decrease) in Employee Related Liabilities and Other Accrued Liabilities" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInFinanceReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInFinanceReceivables", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 13.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Financial assets", "label": "Increase (Decrease) in Finance Receivables", "documentation": "The increase (decrease) during the reporting period in outstanding loans including accrued interest." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 14.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Inventories", "label": "Increase (Decrease) in Inventories", "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other long term liabilities", "label": "Increase (Decrease) in Other Noncurrent Liabilities", "documentation": "Amount of increase (decrease) in noncurrent operating liabilities classified as other." } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 11.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Prepaid expenses and other assets", "label": "Increase (Decrease) in Prepaid Expense and Other Assets", "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other." } } }, "auth_ref": [ "r4" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_IndemnificationGuaranteeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IndemnificationGuaranteeMember", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Indemnification Agreement", "label": "Indemnification Agreement [Member]", "documentation": "An agreement (contract) that contingently requires the guarantor to make payments to the guaranteed party in compensation for that party's or parties' loss or injury attributable to specified events or actions, such as a patent infringement action against an entity that relied on certain representations as to ownership rights made by a software vendor." } } }, "auth_ref": [ "r985" ] }, "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": { "terseLabel": "Individual:", "label": "Individual [Axis]" } } }, "auth_ref": [ "r851", "r861", "r871", "r895", "r903", "r907", "r915" ] }, "cdxs_InnovatusLoanFirstTrancheMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "InnovatusLoanFirstTrancheMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Innovatus Loan - First Tranche", "label": "Innovatus Loan - First Tranche [Member]", "documentation": "Innovatus Loan - First Tranche" } } }, "auth_ref": [] }, "cdxs_InnovatusLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "InnovatusLoanMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Innovatus Loan", "label": "Innovatus Loan [Member]", "documentation": "Innovatus Loan" } } }, "auth_ref": [] }, "cdxs_InnovatusLoanSecondTrancheMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "InnovatusLoanSecondTrancheMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Innovatus Loan - Second Tranche", "label": "Innovatus Loan - Second Tranche [Member]", "documentation": "Innovatus Loan - Second Tranche" } } }, "auth_ref": [] }, "cdxs_InnovatusLoanWarrantsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "InnovatusLoanWarrantsMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Innovatus Loan Warrants", "label": "Innovatus Loan Warrants [Member]", "documentation": "Innovatus Loan Warrants" } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r913" ] }, "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]" } } }, "auth_ref": [ "r843", "r919" ] }, "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": { "terseLabel": "Insider Trading Policies and Procedures Adopted", "label": "Insider Trading Policies and Procedures Adopted [Flag]" } } }, "auth_ref": [ "r843", "r919" ] }, "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": { "terseLabel": "Insider Trading Policies and Procedures Not Adopted", "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]" } } }, "auth_ref": [ "r843", "r919" ] }, "us-gaap_InterestExpenseDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpenseDebt", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest expense, debt", "label": "Interest Expense, Debt", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt." } } }, "auth_ref": [ "r82", "r369", "r379", "r777", "r778" ] }, "us-gaap_InterestPaidNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestPaidNet", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Interest paid", "label": "Interest Paid, Excluding Capitalized Interest, Operating Activities", "documentation": "Amount of cash paid for interest, excluding capitalized interest, classified as operating activity. Includes, but is not limited to, payment to settle zero-coupon bond for accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount." } } }, "auth_ref": [ "r195", "r197", "r198" ] }, "us-gaap_InventoryFinishedGoods": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryFinishedGoods", "crdr": "debit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails" ], "lang": { "en-us": { "role": { "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": [ "r938" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventories", "totalLabel": "Total 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": [ "r177", "r748", "r810" ] }, "us-gaap_InventoryNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNetAbstract", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Inventory Components", "label": "Inventory, Net [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryWorkInProcess": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryWorkInProcess", "crdr": "debit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsInventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Work in process", "label": "Inventory, Work in Process, Gross", "documentation": "Amount before valuation and LIFO reserves of merchandise or goods in the production process expected to be completed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r939" ] }, "us-gaap_InvestmentIncomeInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentIncomeInterest", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Interest income", "label": "Investment Income, Interest", "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities." } } }, "auth_ref": [ "r232", "r242", "r259", "r761", "r945" ] }, "us-gaap_InvestmentPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentPolicyTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term Investments", "label": "Investment, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for investment in financial asset." } } }, "auth_ref": [ "r616", "r637", "r638", "r639", "r640", "r711", "r712" ] }, "us-gaap_InvestmentVariableInterestRateTypeExtensibleEnumeration": { "xbrltype": "enumerationSetItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentVariableInterestRateTypeExtensibleEnumeration", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investment, Variable Interest Rate, Type [Extensible Enumeration]", "label": "Investment, Variable Interest Rate, Type [Extensible Enumeration]", "documentation": "Indicates type of variable interest rate of investment." } } }, "auth_ref": [ "r709", "r714", "r716", "r722" ] }, "us-gaap_InvestmentsAndOtherNoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentsAndOtherNoncurrentAssets", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Investment in non-marketable equity securities", "label": "Investments and Other Noncurrent Assets", "documentation": "Amount of investments, and noncurrent assets classified as other." } } }, "auth_ref": [] }, "us-gaap_InvestmentsDebtAndEquitySecuritiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentsDebtAndEquitySecuritiesAbstract", "lang": { "en-us": { "role": { "label": "Investments, Debt and Equity Securities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentsInDebtAndEquityInstrumentsCashAndCashEquivalentsUnrealizedAndRealizedGainsLossesTextBlock", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecurities" ], "lang": { "en-us": { "role": { "terseLabel": "Investments in Non-Marketable Securities", "label": "Investments in Debt and Equity Instruments, Cash and Cash Equivalents, Unrealized and Realized Gains (Losses) [Text Block]", "documentation": "The entire disclosure for cash, cash equivalents, investments in debt and equity instruments (including cost and equity investees and related income statement amounts), equity and cost method investments, investments in joint ventures and any other investment." } } }, "auth_ref": [ "r503" ] }, "cdxs_KevinNorrettMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "KevinNorrettMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "label": "Kevin Norrett [Member]", "documentation": "Kevin Norrett" } } }, "auth_ref": [] }, "cdxs_LaboratoryEquipmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "LaboratoryEquipmentMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Laboratory equipment", "label": "Laboratory Equipment [Member]", "documentation": "Laboratory Equipment [Member]" } } }, "auth_ref": [] }, "us-gaap_LeaseCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCostAbstract", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lease, Cost [Abstract]", "label": "Lease, Cost [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LeaseCostTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseCostTableTextBlock", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Lease Cost", "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": [ "r1010" ] }, "us-gaap_LeaseholdImprovementsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LeaseholdImprovementsMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Leasehold improvements", "label": "Leasehold Improvements [Member]", "documentation": "Additions or improvements to assets held under a lease arrangement." } } }, "auth_ref": [ "r95", "r524" ] }, "dei_LegalEntityAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LegalEntityAxis", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Legal Entity [Axis]", "label": "Legal Entity [Axis]", "documentation": "The set of legal entities associated with a report." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Operating Lease Maturity", "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": [ "r1011" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total minimum 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": [ "r523" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "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": [ "r523" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2029", "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": [ "r523" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "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": [ "r523" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "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": [ "r523" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025 (remaining 9 months)", "label": "Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease having initial or remaining lease term in excess of one year to be paid in remainder of current fiscal year." } } }, "auth_ref": [ "r1011" ] }, "cdxs_LesseeOperatingLeaseLiabilityToBePaidAfterYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "LesseeOperatingLeaseLiabilityToBePaidAfterYearFour", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Lessee, Operating Lease, Liability, to be Paid, After Year Four", "documentation": "Lessee, Operating Lease, Liability, to be Paid, After Year Four" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityUndiscountedExcessAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LesseeOperatingLeaseLiabilityUndiscountedExcessAmount", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "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": [ "r523" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "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": [ "r11", "r55", "r56", "r57", "r59", "r60", "r61", "r62", "r204", "r302", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r476", "r477", "r478", "r504", "r662", "r754", "r838", "r986", "r1012", "r1013" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "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": [ "r70", "r114", "r606", "r810", "r951", "r971", "r1005" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer." } } }, "auth_ref": [ "r57", "r161", "r204", "r302", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r476", "r477", "r478", "r504", "r810", "r986", "r1012", "r1013" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current liabilities:", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebt", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails", "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total long-term debt", "label": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r11", "r112", "r362", "r377", "r775", "r776", "r808", "r1024" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_DebtInstrumentCarryingAmount", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Long-Term Debt, Maturity, Year One", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r205", "r367" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearFour", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_DebtInstrumentCarryingAmount", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2029", "label": "Long-Term Debt, Maturity, Year Four", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r205", "r367" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearThree", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_DebtInstrumentCarryingAmount", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Long-Term Debt, Maturity, Year Three", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r205", "r367" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalInYearTwo", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_DebtInstrumentCarryingAmount", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Long-Term Debt, Maturity, Year Two", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r7", "r205", "r367" ] }, "us-gaap_LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtMaturitiesRepaymentsOfPrincipalRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_DebtInstrumentCarryingAmount", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Long-Term Debt, Maturity, Remainder of Fiscal Year", "documentation": "Amount of long-term debt payable, sinking fund requirement, and other securities issued that are redeemable by holder at fixed or determinable price and date, maturing in remainder of current fiscal year." } } }, "auth_ref": [ "r952" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term debt", "label": "Long-Term Debt, Excluding Current Maturities", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r168" ] }, "cdxs_LongTermUnbilledReceivablesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "LongTermUnbilledReceivablesMember", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Term Unbilled Receivables", "label": "Long-Term Unbilled Receivables [Member]", "documentation": "Long-Term Unbilled Receivables" } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Term Debt, Type [Axis]", "label": "Long-Term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r11", "r976", "r977", "r978" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Term Debt, Type [Domain]", "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": [ "r11", "r35", "r976", "r977", "r978" ] }, "us-gaap_LossContingenciesByNatureOfContingencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LossContingenciesByNatureOfContingencyAxis", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Loss Contingency Nature [Axis]", "label": "Loss Contingency Nature [Axis]", "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur." } } }, "auth_ref": [ "r332", "r333", "r334", "r337", "r459", "r635", "r773", "r981", "r982" ] }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LossContingencyAccrualCarryingValueCurrent", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Loss contingency accrual", "label": "Loss Contingency, Accrual, Current", "documentation": "Amount of loss contingency liability expected to be resolved within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r332" ] }, "us-gaap_LossContingencyNatureDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LossContingencyNatureDomain", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Loss Contingency, Nature [Domain]", "label": "Loss Contingency, Nature [Domain]", "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability." } } }, "auth_ref": [ "r332", "r333", "r334", "r337", "r459", "r635", "r773", "r981", "r982" ] }, "srt_MajorCustomersAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MajorCustomersAxis", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer [Axis]", "label": "Customer [Axis]" } } }, "auth_ref": [ "r267", "r785", "r821", "r825", "r993", "r1026", "r1030", "r1031", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "us-gaap_MarketableSecuritiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MarketableSecuritiesLineItems", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Marketable Securities [Line Items]", "label": "Marketable Securities [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_MarketableSecuritiesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MarketableSecuritiesTable", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Marketable Securities [Table]", "label": "Marketable Securities [Table]", "documentation": "Disclosure of information about investment in marketable security." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails", "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]" } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r421", "r459", "r495", "r557", "r625", "r627", "r635", "r654", "r655", "r708", "r713", "r717", "r718", "r721", "r741", "r742", "r767", "r779", "r793", "r801", "r802", "r806", "r807", "r822", "r988", "r1014", "r1015", "r1016", "r1017", "r1018", "r1019" ] }, "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": { "terseLabel": "Measure:", "label": "Measure [Axis]" } } }, "auth_ref": [ "r887" ] }, "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": { "terseLabel": "Name", "label": "Measure Name" } } }, "auth_ref": [ "r887" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]" } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r421", "r459", "r495", "r557", "r625", "r627", "r635", "r654", "r655", "r708", "r713", "r717", "r718", "r721", "r741", "r742", "r767", "r779", "r793", "r801", "r802", "r806", "r822", "r988", "r1014", "r1015", "r1016", "r1017", "r1018", "r1019" ] }, "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": { "terseLabel": "MNPI Disclosure Timed for Compensation Value", "label": "MNPI Disclosure Timed for Compensation Value [Flag]" } } }, "auth_ref": [ "r906" ] }, "us-gaap_MoneyMarketFundsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Money market funds", "label": "Money Market Funds [Member]", "documentation": "Fund that invests in short-term money-market instruments, for example, but not limited to, commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and other highly liquid securities." } } }, "auth_ref": [ "r994" ] }, "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": { "terseLabel": "Material Terms of Trading Arrangement", "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r914" ] }, "srt_NameOfMajorCustomerDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "NameOfMajorCustomerDomain", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer [Domain]", "label": "Customer [Domain]" } } }, "auth_ref": [ "r267", "r785", "r821", "r825", "r993", "r1026", "r1030", "r1031", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "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": { "terseLabel": "Named Executive Officers, Footnote", "label": "Named Executive Officers, Footnote [Text Block]" } } }, "auth_ref": [ "r888" ] }, "us-gaap_NatureOfOperations": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NatureOfOperations", "presentation": [ "http://www.codexis.com/role/DescriptionofBusiness" ], "lang": { "en-us": { "role": { "verboseLabel": "Description of Business", "label": "Nature of Operations [Text Block]", "documentation": "The entire disclosure for the nature of an entity's business, major products or services, principal markets including location, and the relative importance of its operations in each business and the basis for the determination, including but not limited to, assets, revenues, or earnings. For an entity that has not commenced principal operations, disclosures about the risks and uncertainties related to the activities in which the entity is currently engaged and an understanding of what those activities are being directed toward." } } }, "auth_ref": [ "r128", "r136" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "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": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets." } } }, "auth_ref": [ "r196" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "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": [ "r88", "r89", "r90" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 }, "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 }, "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net loss", "terseLabel": "Net loss", "netLabel": "Net loss", "label": "Net Income (Loss) Attributable to Parent", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r80", "r90", "r118", "r159", "r184", "r187", "r191", "r204", "r209", "r211", "r212", "r213", "r214", "r215", "r218", "r219", "r224", "r302", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r471", "r474", "r489", "r504", "r610", "r685", "r701", "r702", "r837", "r986" ] }, "cdxs_NetProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "NetProceedsFromStockOptionsExercised", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net proceeds from stock options exercised", "label": "Net Proceeds from Stock Options Exercised", "documentation": "Net Proceeds from Stock Options Exercised" } } }, "auth_ref": [] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Accounting Pronouncements", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "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": { "terseLabel": "Non-GAAP Measure Description", "label": "Non-GAAP Measure Description [Text Block]" } } }, "auth_ref": [ "r887" ] }, "cdxs_NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "NonMarketableDebtSecuritiesWithoutReadilyDeterminableFairValueAnnualAmount", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized or realized gains or losses", "label": "Non Marketable Debt Securities Without Readily Determinable Fair Value Annual Amount", "documentation": "Non Marketable Debt Securities Without Readily Determinable Fair Value Annual Amount" } } }, "auth_ref": [] }, "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": { "terseLabel": "Non-NEOs", "label": "Non-NEOs [Member]" } } }, "auth_ref": [ "r851", "r861", "r871", "r895", "r903" ] }, "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": { "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount", "label": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r878" ] }, "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": { "terseLabel": "Non-PEO NEO Average Total Compensation Amount", "label": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r877" ] }, "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": { "terseLabel": "Non-PEO NEO", "label": "Non-PEO NEO [Member]" } } }, "auth_ref": [ "r895" ] }, "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": { "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted", "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r914" ] }, "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": { "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated", "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r914" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental non-cash investing and financing activities:", "label": "Noncash Investing and Financing Items [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NoncurrentAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncurrentAssets", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-lived assets", "label": "Long-Lived Assets", "documentation": "Long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets." } } }, "auth_ref": [ "r266" ] }, "us-gaap_NotesReceivableGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NotesReceivableGross", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AccountsNotesAndLoansReceivableNetCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total financial assets", "label": "Financing Receivable, before Allowance for Credit Loss", "documentation": "Amortized cost, before allowance for credit loss, of financing receivable. Excludes financing receivable covered under loss sharing agreement and net investment in lease." } } }, "auth_ref": [ "r123", "r124", "r150", "r151", "r173", "r268", "r309", "r312", "r769", "r770", "r936", "r972" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.codexis.com/role/DescriptionofBusinessDetails", "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of reportable segments", "label": "Number of Reportable Segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r756", "r766", "r959" ] }, "cdxs_OfficeEquipmentAndFurnitureMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "OfficeEquipmentAndFurnitureMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Office equipment and furniture", "label": "Office Equipment and Furniture [Member]", "documentation": "Office Equipment and Furniture [Member]" } } }, "auth_ref": [] }, "us-gaap_OperatingCostsAndExpensesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingCostsAndExpensesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Costs and operating expenses:", "label": "Operating Costs and Expenses [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Loss from operations", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r121", "r755", "r958", "r960", "r961", "r962", "r963" ] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "lang": { "en-us": { "role": { "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": [ "r518", "r809" ] }, "us-gaap_OperatingLeaseLiabilitiesPaymentsDueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilitiesPaymentsDueAbstract", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Leases", "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", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails_1": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 }, "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Lease obligations", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r516" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 2.0 }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Current portion of lease obligations - Operating leases", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r516" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails": { "parentTag": "us-gaap_OperatingLeaseLiability", "weight": 1.0, "order": 1.0 }, "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesMaturityAnalysisofOperatingLeaseDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term lease obligations - Operating leases", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r516" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesCashPaidforLeaseObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating cash flows from operating leases", "label": "Operating Lease, Payments", "documentation": "Amount of cash outflow from operating lease, excluding payments to bring another asset to condition and location necessary for its intended use." } } }, "auth_ref": [ "r517", "r520" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Right-of-use assets - Operating leases, net", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r515" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Reduction in the carrying amount of right-of-use assets", "label": "Operating Lease, Right-of-Use Asset, Periodic Reduction", "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease." } } }, "auth_ref": [ "r947" ] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted-average discount rate", "label": "Operating Lease, Weighted Average Discount Rate, Percent", "documentation": "Weighted average discount rate for operating lease calculated at point in time." } } }, "auth_ref": [ "r522", "r809" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesOtherLeaseInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-average remaining lease term (in years)", "label": "Operating Lease, Weighted Average Remaining Lease Term", "documentation": "Weighted average remaining lease term for operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r521", "r809" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Organization, Consolidation and Presentation of Financial Statements [Abstract]", "label": "Organization, Consolidation and Presentation of Financial Statements [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherAccruedLiabilitiesCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAccruedLiabilitiesCurrentAndNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other", "label": "Other Accrued Liabilities", "documentation": "Amount of expenses incurred but not yet paid classified as other." } } }, "auth_ref": [ "r111" ] }, "us-gaap_OtherAggregatedInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAggregatedInvestmentsMember", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other investments in non-marketable equity securities", "label": "Other Security Investments [Member]", "documentation": "Other investments in debt and equity securities and other forms of securities that provide ownership interests." } } }, "auth_ref": [ "r650", "r651", "r719" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsCurrent", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets, current", "label": "Other Assets, Current", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r179", "r810" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other non-current assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r166" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized loss on available-for-sale short-term investments, net of tax", "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "documentation": "Amount, after tax and adjustment, of unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r181", "r182", "r183", "r611" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofComprehensiveLossUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive loss:", "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive loss", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r3", "r8", "r105", "r185", "r188", "r215" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other long-term 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": [ "r60" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Interest and other expense, net", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r83" ] }, "us-gaap_OtherOperatingActivitiesCashFlowStatement": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherOperatingActivitiesCashFlowStatement", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other non-cash items", "label": "Other Operating Activities, Cash Flow Statement", "documentation": "Other cash or noncash adjustments to reconcile net income to cash provided by (used in) operating activities that are not separately disclosed in the statement of cash flows (for example, cash received or cash paid during the current period for miscellaneous operating activities, net change during the reporting period in other assets or other liabilities)." } } }, "auth_ref": [] }, "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": { "terseLabel": "Other Performance Measure, Amount", "label": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r887" ] }, "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": { "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount", "label": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r849", "r859", "r869", "r901" ] }, "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": { "terseLabel": "Compensation Amount", "label": "Outstanding Recovery Compensation Amount" } } }, "auth_ref": [ "r852", "r862", "r872", "r904" ] }, "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": { "terseLabel": "Name", "label": "Outstanding Recovery, Individual Name" } } }, "auth_ref": [ "r852", "r862", "r872", "r904" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "auth_ref": [ "r876" ] }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsOfDebtIssuanceCosts", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payment of debt issuance costs", "label": "Payments of Debt Issuance Costs", "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt." } } }, "auth_ref": [ "r18" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchase of property and equipment", "label": "Payments to Acquire Property, Plant, and Equipment", "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets." } } }, "auth_ref": [ "r87" ] }, "us-gaap_PaymentsToAcquireShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireShortTermInvestments", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of short-term investments", "label": "Payments to Acquire Short-Term Investments", "documentation": "The cash outflow for securities or other assets acquired, which qualify for treatment as an investing activity and are to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term." } } }, "auth_ref": [ "r86" ] }, "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": { "terseLabel": "Peer Group Issuers, Footnote", "label": "Peer Group Issuers, Footnote [Text Block]" } } }, "auth_ref": [ "r886" ] }, "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": { "terseLabel": "Peer Group Total Shareholder Return Amount", "label": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r886" ] }, "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": { "terseLabel": "PEO Actually Paid Compensation Amount", "label": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r878" ] }, "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": { "terseLabel": "PEO", "label": "PEO [Member]" } } }, "auth_ref": [ "r895" ] }, "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": { "terseLabel": "PEO Name", "label": "PEO Name" } } }, "auth_ref": [ "r888" ] }, "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": { "terseLabel": "PEO Total Compensation Amount", "label": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r877" ] }, "cdxs_PerformanceBasedOptionsPBOsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "PerformanceBasedOptionsPBOsMember", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Performance based options (\u201cPBOs\u201d)", "label": "Performance Based Options (PBOs) [Member]", "documentation": "Performance Based Options (PBOs) [Member]" } } }, "auth_ref": [] }, "cdxs_PerformanceStockUnitsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "PerformanceStockUnitsMember", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Performance-contingent restricted stock units (\u201cPSUs\u201d)", "label": "Performance Stock Units [Member]", "documentation": "Performance Stock Units [Member]" } } }, "auth_ref": [] }, "cdxs_PiperSandlerCoMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "PiperSandlerCoMember", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Piper Sandler & Co", "label": "Piper Sandler & Co [Member]", "documentation": "Piper Sandler & Co" } } }, "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": { "terseLabel": "Pension Adjustments Prior Service Cost", "label": "Pension Adjustments Prior Service Cost [Member]" } } }, "auth_ref": [ "r879" ] }, "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": { "terseLabel": "Pension Adjustments Service Cost", "label": "Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r923" ] }, "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": { "terseLabel": "Pension Benefits Adjustments, Footnote", "label": "Pension Benefits Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r878" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, par value (in dollars per share)", "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": [ "r63", "r381" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares authorized (in shares)", "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": [ "r63", "r664" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares issued (in shares)", "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": [ "r63", "r381" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, shares outstanding (in shares)", "label": "Preferred Stock, Shares Outstanding", "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased." } } }, "auth_ref": [ "r63", "r664", "r683", "r1061", "r1062" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, $0.0001 par value per share; 5,000 shares authorized, none issued and outstanding", "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": [ "r63", "r602", "r810" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Prepaid expenses 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": [ "r941" ] }, "us-gaap_PrepaidExpenseCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PrepaidExpenseCurrent", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Prepaid expense, current", "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": [ "r178", "r318", "r319", "r750" ] }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromIssuanceOfLongTermDebt", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from long-term debt", "label": "Proceeds from Issuance of Long-Term Debt", "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer." } } }, "auth_ref": [ "r17", "r641" ] }, "us-gaap_ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromMaturitiesPrepaymentsAndCallsOfShorttermInvestments", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from maturity of short-term investments", "label": "Proceeds from Maturities, Prepayments and Calls of Short-Term Investments", "documentation": "The cash inflow from maturities, prepayments, calls and collections of all investments, including securities and other assets, having ready marketability and intended by management to be liquidated, if necessary, within the current operating cycle. Includes cash flows from securities classified as trading securities that were acquired for reasons other than sale in the short-term." } } }, "auth_ref": [ "r16", "r86" ] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from sale of property and equipment", "label": "Proceeds from Sale of Property, Plant, and Equipment", "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r85" ] }, "us-gaap_ProceedsFromStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromStockOptionsExercised", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Proceeds from exercises of stock options", "label": "Proceeds from Stock Options Exercised", "documentation": "Amount of cash inflow from exercise of option under share-based payment arrangement." } } }, "auth_ref": [ "r2", "r10" ] }, "us-gaap_ProductMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProductMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product revenue", "label": "Product [Member]", "documentation": "Article or substance produced by nature, labor or machinery." } } }, "auth_ref": [ "r783" ] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Axis]", "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r263", "r560", "r618", "r619", "r620", "r621", "r622", "r623", "r624", "r744", "r783", "r820", "r822", "r823", "r826", "r828", "r983", "r984", "r993", "r1026", "r1030", "r1031", "r1032", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails", "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Domain]", "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r263", "r560", "r618", "r619", "r620", "r621", "r622", "r623", "r624", "r744", "r783", "r820", "r822", "r823", "r826", "r828", "r983", "r984", "r993", "r1026", "r1030", "r1031", "r1032", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment, Type [Axis]", "label": "Long-Lived Tangible Asset [Axis]", "documentation": "Information by type of long-lived, physical assets used to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r6", "r524" ] }, "us-gaap_PropertyPlantAndEquipmentGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentGross", "crdr": "debit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "parentTag": "us-gaap_PropertyPlantAndEquipmentNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property and equipment", "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": [ "r95", "r163", "r608" ] }, "us-gaap_PropertyPlantAndEquipmentLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentLineItems", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment [Line Items]", "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": [ "r524" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 }, "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Property and equipment, net", "totalLabel": "Property and equipment, net", "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": [ "r6", "r524", "r597", "r608", "r810" ] }, "us-gaap_PropertyPlantAndEquipmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTextBlock", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Property and Equipment, Net", "label": "Property, Plant and Equipment [Table Text Block]", "documentation": "Tabular disclosure of physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r6" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Property, Plant and Equipment, Type [Domain]", "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": [ "r95", "r524" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Provision (recovery) for credit losses", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r194", "r308" ] }, "us-gaap_PurchaseObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PurchaseObligation", "crdr": "credit", "calculation": { "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails": { "parentTag": "us-gaap_AccruedLiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsOtherAccruedLiabilitiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued purchases", "label": "Purchase Obligation", "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier." } } }, "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": { "terseLabel": "Pay vs Performance Disclosure", "label": "Pay vs Performance Disclosure [Table]" } } }, "auth_ref": [ "r876" ] }, "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": { "terseLabel": "Pay vs Performance Disclosure, Table", "label": "Pay vs Performance [Table Text Block]" } } }, "auth_ref": [ "r876" ] }, "cdxs_RSUsAndRSAsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "RSUsAndRSAsMember", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "RSUs and RSAs", "label": "RSUs and RSAs [Member]", "documentation": "RSUs and RSAs" } } }, "auth_ref": [] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails", "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Axis]", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r414", "r421", "r449", "r450", "r451", "r459", "r495", "r532", "r541", "r557", "r625", "r627", "r635", "r654", "r655", "r708", "r713", "r717", "r718", "r721", "r741", "r742", "r767", "r779", "r793", "r801", "r802", "r806", "r807", "r822", "r831", "r979", "r988", "r1001", "r1015", "r1016", "r1017", "r1018", "r1019" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails", "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Domain]", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r333", "r334", "r335", "r336", "r414", "r421", "r449", "r450", "r451", "r459", "r495", "r532", "r541", "r557", "r625", "r627", "r635", "r654", "r655", "r708", "r713", "r717", "r718", "r721", "r741", "r742", "r767", "r779", "r793", "r801", "r802", "r806", "r807", "r822", "r831", "r979", "r988", "r1001", "r1015", "r1016", "r1017", "r1018", "r1019" ] }, "us-gaap_ReceivableTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivableTypeDomain", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable [Domain]", "label": "Receivable [Domain]", "documentation": "Financing arrangement representing a contractual right to receive money either on demand or on fixed and determinable dates." } } }, "auth_ref": [ "r65", "r71" ] }, "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]" } } }, "auth_ref": [ "r844", "r854", "r864", "r896" ] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r460", "r743", "r761", "r1020" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development", "verboseLabel": "Research and development", "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": [] }, "cdxs_ResearchAndDevelopmentRevenueMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ResearchAndDevelopmentRevenueMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Research and development revenue", "label": "Research And Development Revenue [Member]", "documentation": "Research And Development Revenue" } } }, "auth_ref": [] }, "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": { "terseLabel": "Restatement Determination Date:", "label": "Restatement Determination Date [Axis]" } } }, "auth_ref": [ "r845", "r855", "r865", "r897" ] }, "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": { "terseLabel": "Restatement Determination Date", "label": "Restatement Determination Date" } } }, "auth_ref": [ "r846", "r856", "r866", "r898" ] }, "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": { "terseLabel": "Restatement does not require Recovery", "label": "Restatement Does Not Require Recovery [Text Block]" } } }, "auth_ref": [ "r853", "r863", "r873", "r905" ] }, "us-gaap_RestrictedCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCash", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash, current", "label": "Restricted Cash", "documentation": "Amount of cash restricted as to withdrawal or usage. 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": [ "r937", "r948", "r1022", "r1025" ] }, "us-gaap_RestrictedCashAndCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashAndCashEquivalents", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash, current and non-current", "label": "Restricted Cash and Cash Equivalents", "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage. 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": [ "r19", "r108", "r162", "r200", "r601" ] }, "us-gaap_RestrictedCashAndCashEquivalentsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedCashAndCashEquivalentsNoncurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted cash", "label": "Restricted Cash and Cash Equivalents, Noncurrent", "documentation": "Amount of cash and cash equivalents restricted as to withdrawal or usage, classified as noncurrent. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. 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": [ "r19", "r127", "r200" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accumulated deficit", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r67", "r104", "r605", "r632", "r634", "r645", "r665", "r810" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Deficit", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r158", "r206", "r207", "r208", "r210", "r215", "r217", "r219", "r303", "r304", "r321", "r465", "r466", "r468", "r469", "r470", "r472", "r473", "r474", "r479", "r481", "r482", "r484", "r487", "r513", "r514", "r629", "r631", "r646", "r1061" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contract with Customer [Abstract]", "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", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total revenues", "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": [ "r119", "r120", "r232", "r240", "r241", "r255", "r259", "r263", "r265", "r267", "r408", "r410", "r560" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.codexis.com/role/RevenueRecognition" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue Recognition", "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": [ "r137", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r413" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Performance obligation", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r133" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [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_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected timing of satisfaction, period", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r134" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r134" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionPerformanceObligationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Performance Obligation, Expected Timing of Satisfaction", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]", "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [ "r926" ] }, "us-gaap_RevenuesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenuesAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenues:", "label": "Revenues [Abstract]" } } }, "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": { "terseLabel": "Rule 10b5-1 Arrangement Adopted", "label": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r914" ] }, "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": { "terseLabel": "Rule 10b5-1 Arrangement Terminated", "label": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r914" ] }, "cdxs_SaleOfStockCommissionFeePercent": { "xbrltype": "pureItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SaleOfStockCommissionFeePercent", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross sales commission proceeds, percentage", "label": "Sale Of Stock, Commission Fee, Percent", "documentation": "Sale Of Stock, Commission Fee, Percent" } } }, "auth_ref": [] }, "us-gaap_SaleOfStockConsiderationReceivedOnTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SaleOfStockConsiderationReceivedOnTransaction", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net proceeds received", "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.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock [Domain]", "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": [] }, "cdxs_SaleOfStockPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SaleOfStockPeriod", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of stock, period", "label": "Sale Of Stock, Period", "documentation": "Sale Of Stock, Period" } } }, "auth_ref": [] }, "cdxs_SaleOfStockSecuritiesRegisteredAggregateAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SaleOfStockSecuritiesRegisteredAggregateAmount", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of stock, securities registered aggregate amount", "label": "Sale Of Stock, Securities Registered Aggregate Amount", "documentation": "Sale Of Stock, Securities Registered Aggregate Amount" } } }, "auth_ref": [] }, "cdxs_SaleOfStockValueOfSharesForIssuance": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SaleOfStockValueOfSharesForIssuance", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of stock, value of shares for issuance", "label": "Sale Of Stock, Value Of Shares For Issuance", "documentation": "Sale Of Stock, Value Of Shares For Issuance" } } }, "auth_ref": [] }, "us-gaap_SalesRevenueProductLineMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SalesRevenueProductLineMember", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationConcentrationRiskDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue", "label": "Revenue, Product and Service Benchmark [Member]", "documentation": "Revenue from specified product or service, when it serves as benchmark in concentration of risk calculation. Includes, but is not limited to, revenue from contract with customer and other sources." } } }, "auth_ref": [ "r927" ] }, "us-gaap_ScheduleOfAccruedLiabilitiesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccruedLiabilitiesTableTextBlock", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Other Accrued Liabilities", "label": "Schedule of Accrued Liabilities [Table Text Block]", "documentation": "Tabular disclosure of the components of accrued liabilities." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTable", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Antidilutive Securities Excluded from Computation of Earnings Per Share [Table]", "label": "Antidilutive Security, Excluded EPS Calculation [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": [ "r24" ] }, "us-gaap_ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareTextBlock", "presentation": [ "http://www.codexis.com/role/NetLossperShareTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Shares Not Included in Computation of Diluted Net Loss 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": [ "r24" ] }, "cdxs_ScheduleOfCommitmentsAndContingenciesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ScheduleOfCommitmentsAndContingenciesLineItems", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Commitments and Contingencies [Line Items]", "label": "Schedule of Commitments and Contingencies [Line Items]", "documentation": "Schedule of Commitments and Contingencies [Line Items]" } } }, "auth_ref": [] }, "cdxs_ScheduleOfCommitmentsAndContingenciesTable": { "xbrltype": "stringItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ScheduleOfCommitmentsAndContingenciesTable", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Commitments and Contingencies [Table]", "label": "Schedule of Commitments and Contingencies [Table]", "documentation": "Schedule of commitments and contingencies." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfDebtInstrumentsTextBlock", "presentation": [ "http://www.codexis.com/role/DebtTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Long-Term Debt Instruments", "label": "Schedule of Long-Term Debt Instruments [Table Text Block]", "documentation": "Tabular disclosure of long-debt instruments or arrangements, including identification, terms, features, collateral requirements and other information necessary to a fair presentation. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the entity, if longer." } } }, "auth_ref": [ "r11", "r39", "r42", "r53", "r102", "r103", "r775", "r777", "r952", "r1007" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table]", "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": [ "r45" ] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Stock-based 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": [ "r45" ] }, "us-gaap_ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEntityWideDisclosureOnGeographicAreasLongLivedAssetsInIndividualForeignCountriesByCountryTextBlock", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Long-Lived Assets by Geographical Area", "label": "Schedule of Disclosure on Geographic Areas, Long-Lived Assets in Individual Foreign Countries by Country [Table Text Block]", "documentation": "Tabular disclosure of the names of foreign countries in which material long-lived assets other than financial instruments, long-term customer relationships of a financial institution, mortgage and other servicing rights, deferred policy acquisition costs, and deferred tax assets are located, and amount of such long-lived assets located in that country or foreign geographic area." } } }, "auth_ref": [ "r93" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Inventory Components", "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": [ "r12", "r72", "r73", "r74" ] }, "us-gaap_ScheduleOfMaturitiesOfLongTermDebtTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfMaturitiesOfLongTermDebtTableTextBlock", "presentation": [ "http://www.codexis.com/role/DebtTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Maturities of Long-Term Debt", "label": "Schedule of Maturities of Long-Term Debt [Table Text Block]", "documentation": "Tabular disclosure of maturity and sinking fund requirement for long-term debt." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ScheduleOfPropertyPlantAndEquipmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfPropertyPlantAndEquipmentTable", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Property, Plant and Equipment [Table]", "label": "Property, Plant and Equipment [Table]", "documentation": "Disclosure of information about physical assets used in the normal conduct of business and not intended for resale. Includes, but is not limited to, balances by class of assets, depreciation and depletion expense and method used, including composite depreciation, and accumulated deprecation." } } }, "auth_ref": [ "r6", "r524" ] }, "us-gaap_ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRevenuesFromExternalCustomersAndLongLivedAssetsTable", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "label": "Schedule of Revenues from External Customers and Long-Lived Assets [Table]", "documentation": "Disclosure of information about revenue from external customer and long-lived asset by geographical area. Long-lived asset excludes financial instrument, customer relationship with financial institution, mortgage and other servicing right, deferred policy acquisition cost, and deferred tax asset." } } }, "auth_ref": [ "r32", "r76" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r423", "r425", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452" ] }, "us-gaap_ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSharebasedCompensationRestrictedStockAndRestrictedStockUnitsActivityTableTextBlock", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock-based Compensation Expense by Security Types", "label": "Share-Based Payment Arrangement, Restricted Stock and Restricted Stock Unit, Activity [Table Text Block]", "documentation": "Disclosure of the number and weighted-average grant date fair value for restricted stock and restricted stock units that were outstanding at the beginning and end of the year, and the number of restricted stock and restricted stock units that were granted, vested, or forfeited during the year." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfStockByClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfStockByClassTable", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock by Class [Table]", "label": "Stock, Class of Stock [Table]", "documentation": "Disclosure of information about stock by class. Includes, but is not limited to, common, convertible, and preferred stocks." } } }, "auth_ref": [ "r37", "r38", "r39", "r40", "r41", "r42", "r100", "r102", "r103", "r104", "r169", "r170", "r171", "r234", "r381", "r382", "r383", "r385", "r388", "r393", "r395", "r641", "r642", "r643", "r644", "r779", "r925", "r949" ] }, "us-gaap_SchedulesOfConcentrationOfRiskByRiskFactorTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SchedulesOfConcentrationOfRiskByRiskFactorTextBlock", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Customers that Contributed 10% or More of Total Accounts Receivable", "label": "Schedules of Concentration of Risk, by Risk Factor [Table Text Block]", "documentation": "Tabular disclosure of the nature of a concentration, a benchmark to which it is compared, and the percentage that the risk is to the benchmark." } } }, "auth_ref": [ "r25", "r26", "r27", "r28", "r51", "r107" ] }, "us-gaap_SecuredDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecuredDebtMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Secured Debt", "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": [] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r839" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "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": [ "r841" ] }, "us-gaap_SecurityOwnedNotReadilyMarketableAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecurityOwnedNotReadilyMarketableAxis", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails", "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Security Owned Not Readily Marketable [Axis]", "label": "Security Owned Not Readily Marketable [Axis]", "documentation": "Information by name of not readily marketable security." } } }, "auth_ref": [ "r1021" ] }, "us-gaap_SecurityOwnedNotReadilyMarketableNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SecurityOwnedNotReadilyMarketableNameDomain", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsNarrativeDetails", "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Security Owned Not Readily Marketable, Name [Domain]", "label": "Security Owned Not Readily Marketable, Name [Domain]", "documentation": "Name of the security category or actual security title." } } }, "auth_ref": [ "r1021" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]" } } }, "auth_ref": [ "r265", "r266", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r649", "r652", "r653", "r710", "r715", "r720", "r723", "r729", "r732", "r733", "r734", "r735", "r736", "r737", "r738", "r739", "r740", "r745", "r784", "r812", "r813", "r814", "r815", "r816", "r817", "r818", "r819", "r824", "r831", "r993", "r1026", "r1030", "r1031", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting [Abstract]", "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Segment, Geographical and Other Revenue Information", "label": "Segment Reporting Disclosure [Text Block]", "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments." } } }, "auth_ref": [ "r122", "r232", "r235", "r236", "r237", "r238", "r239", "r245", "r246", "r247", "r257", "r258", "r259", "r260", "r261", "r263", "r264", "r267", "r756", "r759", "r760", "r761", "r763", "r765", "r766" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting Information [Line Items]", "label": "Segment Reporting Information [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "us-gaap_SegmentReportingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingPolicyPolicyTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Information", "label": "Segment Reporting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for segment reporting." } } }, "auth_ref": [ "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r262", "r265", "r757", "r758", "r764" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited": { "parentTag": "us-gaap_CostsAndExpenses", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Selling, general and administrative", "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": [ "r81" ] }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpensesMember", "presentation": [ "http://www.codexis.com/role/BalanceSheetDetailsPropertyandEquipmentnetDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Selling, general and administrative", "verboseLabel": "Selling, general and administrative", "label": "Selling, General and Administrative Expenses [Member]", "documentation": "Primary financial statement caption encompassing selling, general and administrative expense." } } }, "auth_ref": [] }, "cdxs_SeqWellMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SeqWellMember", "presentation": [ "http://www.codexis.com/role/InvestmentsinNonMarketableSecuritiesCarryingValueofNonmarketableEquitySecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "seqWell", "label": "seqWell [Member]", "documentation": "seqWell" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Stock-based compensation", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r4" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "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": [ "r423", "r425", "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of shares authorized (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized", "documentation": "Number of shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [ "r795" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation arrangement by share-based payment award, shares issued in period (in shares)", "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": [ "r44" ] }, "cdxs_ShareBasedCompensationArrangementBySharebasedPaymentAwardConsecutiveOfferingPeriod": { "xbrltype": "durationItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ShareBasedCompensationArrangementBySharebasedPaymentAwardConsecutiveOfferingPeriod", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation arrangement by share-based payment award, consecutive offering period", "label": "Share-Based Compensation Arrangement By Share-based Payment Award, Consecutive Offering Period", "documentation": "Share-Based Compensation Arrangement By Share-based Payment Award, Consecutive Offering Period" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails", "http://www.codexis.com/role/StockbasedCompensationStockbasedCompensationExpenseDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Domain]", "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r427", "r428", "r429", "r430", "r431", "r432", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average exercise price of stock options exercised (in dollars per share)", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price", "documentation": "Weighted average price at which option holders acquired shares when converting their stock options into shares." } } }, "auth_ref": [ "r435" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardPurchasePriceOfCommonStockPercent", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Purchase price of common stock", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Purchase Price of Common Stock, Percent", "documentation": "Purchase price of common stock expressed as a percentage of its fair value." } } }, "auth_ref": [] }, "cdxs_SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumEmployeeSubscriptionAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "SharebasedCompensationArrangementbySharebasedPaymentAwardMaximumEmployeeSubscriptionAmount", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/StockbasedCompensationNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation arrangement by share-based payment award, maximum employee subscription amount", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Amount", "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Maximum Employee Subscription Amount" } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "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_ShortTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermInvestments", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term investments", "label": "Short-Term Investments", "documentation": "Amount of investments including trading securities, available-for-sale securities, held-to-maturity securities, and short-term investments classified as other and current." } } }, "auth_ref": [ "r115", "r116", "r940" ] }, "us-gaap_ShortTermInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShortTermInvestmentsMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Short-term Investments", "label": "Short-Term Investments [Member]", "documentation": "Investments which are not otherwise included in another category or item that the entity has the intent to sell or dispose of within one year from the date of the balance sheet." } } }, "auth_ref": [ "r724", "r725", "r726", "r746" ] }, "cdxs_ShortTermUnbilledReceivablesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "ShortTermUnbilledReceivablesMember", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Short-Term Unbilled Receivables", "label": "Short-Term Unbilled Receivables [Member]", "documentation": "Short-Term Unbilled Receivables" } } }, "auth_ref": [] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "verboseLabel": "Basis of Presentation and 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": [ "r91", "r201" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r9", "r64", "r68", "r69", "r158", "r189", "r190", "r191", "r206", "r207", "r208", "r210", "r215", "r217", "r219", "r233", "r303", "r304", "r321", "r397", "r465", "r466", "r468", "r469", "r470", "r472", "r473", "r474", "r479", "r480", "r481", "r482", "r483", "r484", "r487", "r505", "r506", "r507", "r508", "r509", "r510", "r513", "r514", "r525", "r611", "r629", "r630", "r631", "r646", "r703" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionDisaggregationofRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]" } } }, "auth_ref": [ "r265", "r266", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584", "r585", "r586", "r587", "r588", "r589", "r590", "r649", "r652", "r653", "r710", "r715", "r720", "r723", "r729", "r732", "r733", "r734", "r735", "r736", "r737", "r738", "r739", "r740", "r745", "r784", "r812", "r813", "r814", "r815", "r816", "r817", "r818", "r819", "r824", "r831", "r993", "r1026", "r1030", "r1031", "r1033", "r1034", "r1035", "r1036", "r1037", "r1038", "r1039", "r1040", "r1041", "r1042", "r1043", "r1044", "r1045", "r1046", "r1047", "r1048", "r1049", "r1050", "r1051", "r1052", "r1053", "r1054", "r1055", "r1057", "r1058" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "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": [ "r206", "r207", "r208", "r233", "r514", "r560", "r637", "r648", "r656", "r657", "r658", "r659", "r660", "r661", "r664", "r667", "r668", "r669", "r670", "r671", "r673", "r674", "r675", "r676", "r678", "r679", "r680", "r681", "r682", "r684", "r686", "r687", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r703", "r832" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "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": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Comprehensive Income [Abstract]", "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "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.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "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": [ "r206", "r207", "r208", "r233", "r268", "r514", "r560", "r637", "r648", "r656", "r657", "r658", "r659", "r660", "r661", "r664", "r667", "r668", "r669", "r670", "r671", "r673", "r674", "r675", "r676", "r678", "r679", "r680", "r681", "r682", "r684", "r686", "r687", "r689", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700", "r703", "r832" ] }, "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": { "terseLabel": "Stock Price or TSR Estimation Method", "label": "Stock Price or TSR Estimation Method [Text Block]" } } }, "auth_ref": [ "r848", "r858", "r868", "r900" ] }, "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": { "terseLabel": "Stock Appreciation Rights (SARs)", "label": "Stock Appreciation Rights (SARs) [Member]", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockCompensationPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockCompensationPlanMember", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares issuable under the Equity Incentive Plan and ESPP", "label": "Share-Based Payment Arrangement [Member]", "documentation": "Share-based payment arrangement in which award of equity shares are granted. Arrangement includes, but is not limited to, grantor incurring liability for product and service based on price of its shares." } } }, "auth_ref": [ "r957" ] }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesNewIssues", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock, net of issuance costs (in shares)", "label": "Stock Issued During Period, Shares, New Issues", "documentation": "Number of new stock issued during the period." } } }, "auth_ref": [ "r9", "r63", "r64", "r104", "r641", "r703", "r727" ] }, "us-gaap_StockIssuedDuringPeriodSharesOther": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesOther", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Issuance of common stock upon release of stock awards (in shares)", "label": "Stock Issued During Period, Shares, Other", "documentation": "Number of shares of stock issued attributable to transactions classified as other." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of common stock upon exercise of stock options (in 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": [ "r9", "r63", "r64", "r104", "r435" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r9", "r64", "r68", "r69", "r104" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited", "http://www.codexis.com/role/CondensedConsolidatedStatementsofStockholdersEquityUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total 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": [ "r64", "r68", "r69", "r94", "r666", "r683", "r704", "r705", "r810", "r838", "r951", "r971", "r1005", "r1061" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Stockholders' equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.codexis.com/role/CapitalStock" ], "lang": { "en-us": { "role": { "terseLabel": "Capital Stock", "label": "Equity [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r101", "r203", "r380", "r382", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r394", "r397", "r486", "r706", "r707", "r728" ] }, "us-gaap_SubsidiarySaleOfStockAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsidiarySaleOfStockAxis", "presentation": [ "http://www.codexis.com/role/CapitalStockDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sale of Stock [Axis]", "label": "Sale of Stock [Axis]", "documentation": "Information by type of sale of the entity's stock." } } }, "auth_ref": [] }, "us-gaap_SupplementalCashFlowInformationAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplementalCashFlowInformationAbstract", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofCashFlowsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental disclosure of cash flow information:", "label": "Supplemental Cash Flow Information [Abstract]" } } }, "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": { "terseLabel": "Tabular List, Table", "label": "Tabular List [Table Text Block]" } } }, "auth_ref": [ "r894" ] }, "cdxs_TermLoanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.codexis.com/20250331", "localname": "TermLoanMember", "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Term Loan", "label": "Term Loan [Member]", "documentation": "Term Loan [Member]" } } }, "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": { "terseLabel": "Total Shareholder Return Amount", "label": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r886" ] }, "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": { "terseLabel": "Total Shareholder Return Vs Peer Group", "label": "Total Shareholder Return Vs Peer Group [Text Block]" } } }, "auth_ref": [ "r893" ] }, "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": { "terseLabel": "Trading Arrangement:", "label": "Trading Arrangement [Axis]" } } }, "auth_ref": [ "r913" ] }, "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": { "terseLabel": "Trading Arrangements, by Individual", "label": "Trading Arrangements, by Individual [Table]" } } }, "auth_ref": [ "r915" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.codexis.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instruments [Domain]", "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r279", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r297", "r298", "r299", "r300", "r374", "r393", "r485", "r502", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r537", "r538", "r539", "r540", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r556", "r612", "r797", "r799", "r801", "r802", "r803", "r804", "r805", "r806", "r807", "r811", "r929", "r930", "r931", "r932", "r933", "r934", "r935", "r967", "r968", "r969", "r970", "r997", "r1000", "r1001", "r1002", "r1003", "r1004" ] }, "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": { "terseLabel": "Adoption Date", "label": "Trading Arrangement Adoption Date" } } }, "auth_ref": [ "r916" ] }, "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": { "terseLabel": "Arrangement Duration", "label": "Trading Arrangement Duration" } } }, "auth_ref": [ "r917" ] }, "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": { "terseLabel": "Expiration Date", "label": "Trading Arrangement Expiration Date" } } }, "auth_ref": [ "r917" ] }, "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": { "terseLabel": "Name", "label": "Trading Arrangement, Individual Name" } } }, "auth_ref": [ "r915" ] }, "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": { "terseLabel": "Title", "label": "Trading Arrangement, Individual Title" } } }, "auth_ref": [ "r915" ] }, "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": { "terseLabel": "Aggregate Available", "label": "Trading Arrangement, Securities Aggregate Available Amount" } } }, "auth_ref": [ "r918" ] }, "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": { "terseLabel": "Termination Date", "label": "Trading Arrangement Termination Date" } } }, "auth_ref": [ "r916" ] }, "country_US": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2024", "localname": "US", "presentation": [ "http://www.codexis.com/role/SegmentGeographicalandOtherRevenueInformationLongLivedAssetsbyGeographicAreaDetails" ], "lang": { "en-us": { "role": { "terseLabel": "United States", "label": "UNITED STATES" } } }, "auth_ref": [] }, "us-gaap_USGovernmentCorporationsAndAgenciesSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "USGovernmentCorporationsAndAgenciesSecuritiesMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. agency securities", "label": "US Government Corporations and Agencies Securities [Member]", "documentation": "This category includes information about debt issued by US Government Corporations and Agencies. Investments in such US Government Corporations may include debt securities issued by the Government National Mortgage Association (Ginnie Mae) and by the Federal National Mortgage Association (Fannie Mae) and the Federal Home Loan Mortgage Corporation (Freddie Mac)." } } }, "auth_ref": [ "r1023" ] }, "us-gaap_USTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "USTreasurySecuritiesMember", "presentation": [ "http://www.codexis.com/role/FairValueMeasurementsSummaryofFinancialInstrumentsMeasuredatFairValueonaRecurringBasisDetails" ], "lang": { "en-us": { "role": { "terseLabel": "U.S. treasury securities", "label": "US Treasury Securities [Member]", "documentation": "This category includes information about debt securities issued by the United States Department of the Treasury and backed by the United States government. Such securities primarily consist of treasury bills (short-term maturities - one year or less), treasury notes (intermediate term maturities - two to ten years), and treasury bonds (long-term maturities - ten to thirty years)." } } }, "auth_ref": [ "r752", "r790", "r792", "r797", "r1023" ] }, "us-gaap_UnamortizedDebtIssuanceExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnamortizedDebtIssuanceExpense", "crdr": "debit", "calculation": { "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 1.0 }, "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails": { "parentTag": "us-gaap_LongTermDebt", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.codexis.com/role/DebtNarrativeDetails", "http://www.codexis.com/role/DebtScheduleofLongTermDebtInstrumentsDetails", "http://www.codexis.com/role/DebtScheduleofMaturitiesofLongTermDebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unamortized debt issuance expense", "negatedTerseLabel": "Less: unamortized debt issuance cost", "label": "Unamortized Debt Issuance Expense", "documentation": "The remaining balance of debt issuance expenses that were capitalized and are being amortized against income over the lives of the respective bond issues. This does not include the amounts capitalized as part of the cost of the utility plant or asset." } } }, "auth_ref": [] }, "us-gaap_UnbilledContractsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnbilledContractsReceivable", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionContractswithCustomerDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled receivables", "label": "Unbilled Contracts Receivable", "documentation": "Unbilled amounts due for services rendered or to be rendered, actions taken or to be taken, or a promise to refrain from taking certain actions in accordance with the terms of a legally binding agreement between the entity and, at a minimum, one other party. An example would be amounts associated with contracts or programs where the recognized revenue for performance thereunder exceeds the amounts billed under the terms thereof as of the date of the balance sheet." } } }, "auth_ref": [ "r559" ] }, "us-gaap_UnbilledReceivablesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnbilledReceivablesCurrent", "crdr": "debit", "calculation": { "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited": { "parentTag": "us-gaap_NotesReceivableGross", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedBalanceSheetsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled receivables", "label": "Unbilled Receivables, Current", "documentation": "Amount received for services rendered and products shipped, but not yet billed, for non-contractual agreements due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [] }, "us-gaap_UnbilledReceivablesNotBillableAtBalanceSheetDate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnbilledReceivablesNotBillableAtBalanceSheetDate", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/RevenueRecognitionNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled receivables, not billable", "label": "Unbilled Receivables, Not Billable", "documentation": "Amount of unbilled receivables under long-term contracts that have not been billed and were not billable." } } }, "auth_ref": [ "r174" ] }, "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": { "terseLabel": "Underlying Security Market Price Change", "label": "Underlying Security Market Price Change, Percent" } } }, "auth_ref": [ "r912" ] }, "us-gaap_UseOfEstimates": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UseOfEstimates", "presentation": [ "http://www.codexis.com/role/BasisofPresentationandSummaryofSignificantAccountingPoliciesPolicies" ], "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": [ "r29", "r30", "r31", "r129", "r130", "r131", "r132" ] }, "us-gaap_VariableLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableLeaseCost", "crdr": "debit", "presentation": [ "http://www.codexis.com/role/CommitmentsandContingenciesLeaseCostDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Variable lease, cost", "label": "Variable Lease, Cost", "documentation": "Amount of variable lease cost, excluded from lease liability, recognized when obligation for payment is incurred for finance and operating leases." } } }, "auth_ref": [ "r519", "r809" ] }, "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": { "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year", "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]" } } }, "auth_ref": [ "r882" ] }, "us-gaap_WarrantMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WarrantMember", "presentation": [ "http://www.codexis.com/role/NetLossperShareSharesNotIncludedinComputationofDilutedNetLossPerShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Warrants", "label": "Warrant [Member]", "documentation": "Security that gives the holder the right to purchase shares of stock in accordance with the terms of the instrument, usually upon payment of a specified amount." } } }, "auth_ref": [ "r829", "r830", "r833", "r834", "r835", "r836" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average common stock shares used in computing net loss per share, diluted (in shares)", "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": [ "r222", "r227" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.codexis.com/role/CondensedConsolidatedStatementsofOperationsUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average common stock shares used in computing net loss per share, basic (in shares)", "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": [ "r221", "r227" ] }, "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": { "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested", "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r880" ] } } } }, "std_ref": { "r0": { "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" }, "r1": { "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" }, "r2": { "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" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "470", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-1" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2A" }, "r11": { "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" }, "r12": { "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" }, "r13": { "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" }, "r14": { "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" }, "r15": { "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" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r19": { "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" }, "r20": { "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" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5" }, "r24": { "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" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-16" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-20" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "275", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-21" }, "r29": { "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" }, "r30": { "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" }, "r31": { "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" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r33": { "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" }, "r34": { "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" }, "r35": { "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" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "20", "Section": "25", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481284/470-20-25-2" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481142/505-10-45-2" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-10" }, "r39": { "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" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-4" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-5" }, "r42": { "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" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-1" }, "r44": { "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" }, "r45": { "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" }, "r46": { "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" }, "r47": { "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" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "810", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1" }, "r49": { "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" }, "r50": { "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" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-20" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "825", "SubTopic": "10", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21" }, "r53": { "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" }, "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(19)(a))", "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(19))", "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(20))", "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(21))", "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(22)(a)(1))", "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(23))", "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(24))", "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(25))", "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(26))", "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(28))", "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(29))", "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(3))", "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(30)(a)(1))", "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(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r68": { "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" }, "r69": { "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" }, "r70": { "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" }, "r71": { "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" }, "r72": { "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" }, "r73": { "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" }, "r74": { "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" }, "r75": { "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" }, "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(1))", "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(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r78": { "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" }, "r79": { "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" }, "r80": { "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" }, "r81": { "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" }, "r82": { "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" }, "r83": { "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" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r86": { "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" }, "r87": { "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" }, "r88": { "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" }, "r89": { "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" }, "r90": { "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" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/235/tableOfContent" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "275", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r94": { "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" }, "r95": { "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" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481573/470-10-45-12A" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481284/470-20-25-10" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "480", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/505/tableOfContent" }, "r102": { "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" }, "r103": { "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" }, "r104": { "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" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "820", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/820/tableOfContent" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-21" }, "r108": { "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" }, "r109": { "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" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r111": { "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" }, "r112": { "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" }, "r113": { "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" }, "r114": { "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" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r117": { "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" }, "r118": { "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" }, "r119": { "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" }, "r120": { "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" }, "r121": { "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" }, "r122": { "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" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-29" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-7A" }, "r125": { "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" }, "r126": { "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" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "SubTopic": "210", "Topic": "954", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477220/954-210-45-5" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "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": "(b)", "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": "(c)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-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": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r135": { "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" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/275/tableOfContent" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "a", "Subparagraph": "(Instruction 5)", "Publisher": "SEC" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(1)(Instruction 5)", "Publisher": "SEC" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(2)(Instruction 5)", "Publisher": "SEC" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(3)(Instruction 5)", "Publisher": "SEC" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(4)(Instruction 5)", "Publisher": "SEC" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(5)(Instruction 5)", "Publisher": "SEC" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(1)(i)(Instruction 5)", "Publisher": "SEC" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(1)(ii)(Instruction 5)", "Publisher": "SEC" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(i)(Instruction 5)", "Publisher": "SEC" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(ii)(Instruction 5)", "Publisher": "SEC" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(iii)(Instruction 5)", "Publisher": "SEC" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Subparagraph": "(Instruction 5)", "Publisher": "SEC" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1405", "Paragraph": "a", "Subparagraph": "(1)", "Publisher": "SEC" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1405", "Paragraph": "a", "Subparagraph": "(2)", "Publisher": "SEC" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "a", "Subparagraph": "(1)", "Publisher": "SEC" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "a", "Subparagraph": "(2)", "Publisher": "SEC" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "a", "Subparagraph": "(3)", "Publisher": "SEC" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "a", "Subparagraph": "(4)", "Publisher": "SEC" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "a", "Subparagraph": "(5)", "Publisher": "SEC" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1406", "Paragraph": "c", "Publisher": "SEC" }, "r158": { "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" }, "r159": { "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" }, "r160": { "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" }, "r161": { "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" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17" }, "r196": { "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" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482987/272-10-50-1" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r239": { "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" }, "r240": { "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" }, "r241": { "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" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r244": { "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" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-29" }, "r255": { "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" }, "r256": { "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" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r259": { "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" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "36", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-36" }, "r263": { "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" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r265": { "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" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r267": { "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" }, "r268": { "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" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2" }, "r270": { "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" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r308": { "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" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479130/326-30-45-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r394": { "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" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4" }, "r410": { "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" }, "r411": { "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" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r413": { "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" }, "r414": { "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" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r421": { "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" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "r430": { "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" }, "r431": { "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" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "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" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r480": { "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" }, "r481": { "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" }, "r482": { "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" }, "r483": { "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" }, "r484": { "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" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5" }, "r486": { "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" }, "r487": { "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" }, "r488": { "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" }, "r489": { "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" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r500": { "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" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "13", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482477/820-10-65-13" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-5" }, "r518": { "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" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r532": { "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" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r541": { "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" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r557": { "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" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-2" }, "r560": { "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" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478934/932-220-50-1" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-18" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-19" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "23", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-23" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-31" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-5" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-6" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-7" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-8" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "280", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478657/932-280-50-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "932", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478988/932-323-50-1" }, "r591": { "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" }, "r592": { "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(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r593": { "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" }, "r594": { "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" }, "r595": { "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)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1" }, "r596": { "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" }, "r597": { "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" }, "r598": { "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))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r599": { "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" }, "r600": { "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" }, "r601": { "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" }, "r602": { "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" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "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" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r610": { "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" }, "r611": { "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" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r613": { "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" }, "r614": { "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" }, "r615": { "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" }, "r616": { "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(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r617": { "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" }, "r618": { "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" }, "r619": { "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" }, "r620": { "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" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "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" }, "r630": { "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" }, "r631": { "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" }, "r632": { "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" }, "r633": { "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" }, "r634": { "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" }, "r635": { "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" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "825", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B" }, "r637": { "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" }, "r638": { "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(f)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r639": { "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(f)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r640": { "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(f)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r641": { "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" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r644": { "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" }, "r645": { "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" }, "r646": { "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" }, "r647": { "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" }, "r648": { "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" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-2" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r654": { "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" }, "r655": { "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" }, "r656": { "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" }, "r657": { "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" }, "r658": { "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" }, "r659": { "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" }, "r660": { "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" }, "r661": { "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" }, "r662": { "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" }, "r663": { "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" }, "r664": { "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" }, "r665": { "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" }, "r666": { "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" }, "r667": { "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" }, "r668": { "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" }, "r669": { "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" }, "r670": { "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" }, "r671": { "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" }, "r672": { "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" }, "r673": { "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" }, "r674": { "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" }, "r675": { "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" }, "r676": { "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" }, "r677": { "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" }, "r678": { "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" }, "r679": { "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" }, "r680": { "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" }, "r681": { "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" }, "r682": { "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" }, "r683": { "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" }, "r684": { "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" }, "r685": { "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" }, "r686": { "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" }, "r687": { "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" }, "r688": { "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" }, "r689": { "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" }, "r690": { "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" }, "r691": { "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" }, "r692": { "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" }, "r693": { "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" }, "r694": { "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" }, "r695": { "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" }, "r696": { "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" }, "r697": { "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" }, "r698": { "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" }, "r699": { "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" }, "r700": { "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" }, "r701": { "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" }, "r702": { "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" }, "r703": { "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" }, "r704": { "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" }, "r705": { "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" }, "r706": { "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" }, "r707": { "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" }, "r708": { "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" }, "r709": { "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 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "12", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-12" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "19", "Subparagraph": "(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-19" }, "r713": { "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" }, "r714": { "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 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r716": { "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 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r717": { "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" }, "r718": { "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" }, "r719": { "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 6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r720": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r721": { "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" }, "r722": { "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 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r723": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r724": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r725": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r726": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r727": { "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" }, "r728": { "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" }, "r729": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Column A)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479628/948-310-S99-1" }, "r730": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478785/954-310-50-2" }, "r731": { "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" }, "r732": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r733": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r734": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r735": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r736": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r737": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r738": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r739": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r740": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478979/970-360-S99-1" }, "r741": { "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" }, "r742": { "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" }, "r743": { "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" }, "r744": { "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" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-13H" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "7", "Subparagraph": "(SX 210.12-15(Column A))", "SubTopic": "320", "Topic": "946", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-7" }, "r747": { "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" }, "r748": { "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" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r750": { "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" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483426/235-10-50-4" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(m)(1)(ii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r753": { "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" }, "r754": { "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" }, "r755": { "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" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r761": { "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" }, "r762": { "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" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r766": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r767": { "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" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-12" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "79", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-79" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "80", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479294/326-20-55-80" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8" }, "r772": { "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" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "27", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482395/460-10-55-27" }, "r774": { "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" }, "r775": { "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" }, "r776": { "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" }, "r777": { "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" }, "r778": { "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" }, "r779": { "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" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r783": { "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" }, "r784": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r785": { "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" }, "r786": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r787": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r788": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r789": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r790": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r791": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r792": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17" }, "r793": { "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" }, "r794": { "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" }, "r795": { "role": "http://www.xbrl.org/2003/role/exampleRef", "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" }, "r796": { "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" }, "r797": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r798": { "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" }, "r799": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "101", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101" }, "r800": { "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" }, "r801": { "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" }, "r802": { "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" }, "r803": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r804": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r805": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r806": { "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" }, "r807": { "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" }, "r808": { "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" }, "r809": { "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" }, "r810": { "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" }, "r811": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4" }, "r812": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-17" }, "r813": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-21" }, "r814": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "29", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-29" }, "r815": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477215/932-235-50-3" }, "r816": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-2" }, "r817": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-4" }, "r818": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-5" }, "r819": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "932", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477916/932-235-55-6" }, "r820": { "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" }, "r821": { "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" }, "r822": { "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" }, "r823": { "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" }, "r824": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r825": { "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" }, "r826": { "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" }, "r827": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480078/944-80-55-17" }, "r828": { "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" }, "r829": { "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" }, "r830": { "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" }, "r831": { "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" }, "r832": { "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" }, "r833": { "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" }, "r834": { "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" }, "r835": { "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" }, "r836": { "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" }, "r837": { "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" }, "r838": { "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" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r844": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r845": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r846": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r847": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r848": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r849": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r850": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r851": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r852": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r853": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r854": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r855": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r856": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r857": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r858": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r859": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r860": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r861": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r862": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r863": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r864": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r865": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r866": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r867": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r868": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r869": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r870": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r871": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r872": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r873": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r874": { "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" }, "r875": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r876": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r877": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r878": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r879": { "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" }, "r880": { "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" }, "r881": { "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" }, "r882": { "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" }, "r883": { "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" }, "r884": { "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" }, "r885": { "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" }, "r886": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r887": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r888": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r889": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r890": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r891": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r892": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r893": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r894": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r895": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r896": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r897": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r898": { "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" }, "r899": { "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" }, "r900": { "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" }, "r901": { "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" }, "r902": { "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" }, "r903": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r904": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r905": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r906": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r907": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r908": { "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" }, "r909": { "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" }, "r910": { "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" }, "r911": { "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" }, "r912": { "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" }, "r913": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r914": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r915": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r916": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r917": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r918": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r919": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r920": { "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" }, "r921": { "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" }, "r922": { "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" }, "r923": { "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" }, "r924": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r925": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-3" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482861/275-10-50-18" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "SubTopic": "825", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477351/944-825-50-1B" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "a", "Publisher": "SEC" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(1)", "Publisher": "SEC" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(2)", "Publisher": "SEC" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(3)", "Publisher": "SEC" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1404", "Paragraph": "a", "Publisher": "SEC" }, "r937": { "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" }, "r938": { "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" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r941": { "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" }, "r942": { "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" }, "r943": { "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" }, "r944": { "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" }, "r945": { "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)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r947": { "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" }, "r948": { "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" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r950": { "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" }, "r951": { "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" }, "r952": { "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" }, "r953": { "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" }, "r954": { "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" }, "r955": { "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" }, "r956": { "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" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r958": { "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" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18" }, "r960": { "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" }, "r961": { "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" }, "r962": { "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" }, "r963": { "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" }, "r964": { "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" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-1" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r971": { "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" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r973": { "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" }, "r974": { "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" }, "r975": { "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" }, "r976": { "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" }, "r977": { "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" }, "r978": { "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" }, "r979": { "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" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r981": { "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" }, "r982": { "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" }, "r983": { "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" }, "r984": { "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" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-3" }, "r986": { "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" }, "r987": { "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" }, "r988": { "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" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r993": { "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" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r996": { "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" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r998": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r999": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1000": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r1001": { "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" }, "r1002": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r1003": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r1004": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r1005": { "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" }, "r1006": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-1A" }, "r1007": { "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" }, "r1008": { "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" }, "r1009": { "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" }, "r1010": { "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" }, "r1011": { "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" }, "r1012": { "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" }, "r1013": { "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" }, "r1014": { "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" }, "r1015": { "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" }, "r1016": { "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" }, "r1017": { "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" }, "r1018": { "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" }, "r1019": { "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" }, "r1020": { "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" }, "r1021": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "940", "SubTopic": "820", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478119/940-820-50-1" }, "r1022": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r1023": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-2" }, "r1024": { "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" }, "r1025": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r1026": { "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" }, "r1027": { "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" }, "r1028": { "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" }, "r1029": { "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" }, "r1030": { "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" }, "r1031": { "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" }, "r1032": { "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" }, "r1033": { "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" }, "r1034": { "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" }, "r1035": { "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" }, "r1036": { "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" }, "r1037": { "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" }, "r1038": { "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" }, "r1039": { "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" }, "r1040": { "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" }, "r1041": { "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" }, "r1042": { "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" }, "r1043": { "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" }, "r1044": { "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" }, "r1045": { "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" }, "r1046": { "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" }, "r1047": { "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" }, "r1048": { "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" }, "r1049": { "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" }, "r1050": { "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" }, "r1051": { "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" }, "r1052": { "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" }, "r1053": { "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" }, "r1054": { "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" }, "r1055": { "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" }, "r1056": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-1" }, "r1057": { "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" }, "r1058": { "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" }, "r1059": { "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" }, "r1060": { "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" }, "r1061": { "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" }, "r1062": { "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" }, "r1063": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r1064": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r1065": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r1066": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" } } } ZIP 81 0001200375-25-000006-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001200375-25-000006-xbrl.zip M4$L#!!0 ( "2"KEJ8=H^:+IT! - _$0 1 8V1XY_IJK6 B'Q<'5S%F6[>CQ397MLU^Z9\V4O(25& MNX1$ZV&;_O4W(E," <)((" ELE=UE:U'*C/>$1D9\>O_?9M8T@MQ/=.Q?_NE M66_\(A%;=PS3?O[ME\'CY?@F73EZ,"&V+UVZ1/.) M(;V:_ECRQT3ZPW%_FB^:=&]I_LAQ)[4:>^W2F<+>=11NTUY5-.,AEQ36JI2 MZS;A645M-C325D?=ME8U+E1C)/<4N:>/&JK2&ZK#H6XH366D=/6VIG8[]+MC M']8,Z[:]"_/MM\K8]Z<7GSZ]OK[6WX:N57?;O5[O$[T;/KKY M(5Q9-)Y!5B;J$;W^[+Q\@ALP 5F)'B2ZD?P@W%AZT'SSDY>S -0GW]5L#_&O M^4!1^'JC!@AKRM$@NA/8OCM+_F)X<^FK@5=[UK3I_(61Y@WI5\,;2P^OP7 9 MY'A[J'DDMJ(:?'OIC6@N[RVJJ=8:W5JK.<>=9R8A!;[9_/0_W[\]ZF,RT6JF M[?F:K<^_[KG^^JK@XM**=.-M&>' G.3-].#?"3ZH-EJQ>LG=O'73VSHH6/,^K\:YHOD^3.+_%8Q M3&]J:;,+V[$)3,!\N\ 'BKIF_2_1 MW*]PQ9M_H5/I([SS^L ]/.X8RY_H5OK_W=S] Y>!ZRXMX-HVKD!W+$//@"NU M"8PRKAG: FV]2K\I?VIE^[S2CKX?BHB+!_)"[( \ !>:-J@V6";].+#"W= R MGRE?7[]-B0XZ[XZHTT'>\QN#27YHR2X\((7#KK:,8MQ$@OVW0[ M1YWN#%"PF"T@-R-PNR><;2_S;'NGFVVKD76VS?7IWM@OQ/.10?^AN:8VM,@- MO.'"M0?@&!3*UV\@D3T3[ES;."I=0#0)M0,(?D]Q_NW>-2<$Q_I.)D/B9IMO M9\[I8"MKP$I84*_<*C MZA7F)%$KZ<('J/Q6\LN(Q'%W_.S:^WCQBM@.L$K2L&E!LS3$I^79O[=J MCSPC>ZQ!$7%]$=[,!$;@(F"$#2B>PH^91D/;$>@S>7KAS30#AIQ'QT0-&UTG MU.R)?@-HP>\CD[@2Y0J2:-I>WOS7LCFT^O)\!LNC3ZGHBWX#4]+U49-3"Z36 M:,*?Z+W%O?DTC=BCK5JKN?@$NQ/]'GWDT]*ZD\$@

II:IFSY3X)(!^MRF MX9P*^)(7]ZYC!+I_YSX2]\74R0!\QTH_,B_"NY'N3QQQOOCYAXLA'-H"'P9O 9+&>*XX;N0RD9IBLPQ#D/]3C0G1R MH=G@C5(C ?[HPYKPG>L_ XQ&.I.I8\.OWK*7"7 MX\ P'QB&B7$)S;K73./&OM2FIJ]9A8'_P7V=0\-?UX-)8.&NX9T_)BX^YY(Q MCO9";FS=F1Q 9A\(%P?WS@Z,BP?B:Z9-C&O-Q1BH5QC ']QY+++@Y\"$;'+G M _.J)7A %G<>,G=BC !OUQT MS_S47DJ>N"BZQWY4+R5/P!?=53^6X&_EYQG*17?)3R'X\X1_T3WS4PO^/'%1 M="?\J((_3\ ?W*$^W=**[H4>+_)VFCTQN>C>YFDB;R="5M'=U"-'WDZ#I99P M9@N*N*)[OL?+#\C-Z6T5W>D]37Y ?O OO -\\OR _'!1=&?XR/D!^0'^X)[O MZ9;&W68M9F?.Z>EWXCR[VG1LZIJU3$O7WZ\'I=S?:W'G$O.#D1/9?=SYP%LP M@K<']-BC5L[DA19WCBX_&#D-CRC<.;5;,$)3_0?W@\M2,HC"G:O*"3I.Q!W< M>K'@'F%Q'._6\8GWS=%L;V ;7TU;LW6PT!^(3LP7+ _P9;;X&+,S>NL*MFYL#@KXY]G/1\<.MZUMD!LHQA5[A=G.XP R4 M)WY.Y.=CT11C,W+V+IOS&"EPAJY?#S-PW7!PG%"H*=2 ..R7YA05 V!**^M$ M9\$/)/A/% TI'=VV(\-7T.U1Z/9$,:/2T6U'T.U1Z?9$D;72T6U7T.TQZ5;E M,OY8+A!S%U.B!Z[IF\2[?M.MP"#&5]>9X(YTX%,6NQM% MV\]15<,OL^0!EK%%TV9P'/@Z'>C>TNQ2!H]5?J.5947T:<+2*K]1SV,@^@_- M=4$8EI.'^0V8E@>U)^):?D.MQT#M]61J.3-"REOM1.4N)ZNT"#X1!W.7XC6W M?1A.9G>O-C%N'?^!:("NV7?-_4E\W/"(;UN1/_\@5F%J"*C<97'Q"O0\:Q=S MEZB5$>C1XS1W?/#\[))G3"5?]$\HS!9ZF[L(2;%0D2-7M+F-I'S1+ Q(/HX) M\;\Y.M7C*V>(- \KX^(_F.S_HEF%8@)N0QO;(3]/$RFB\.$VTO!5,]U_:%8 MQNG\Q_^ $;$"].P;UG]>QL+\H1L;#%V//M'<@H;TDV%I*=AHS//= )>R_/7O MCDU"P?@UL(WBX)_;< 17^#^0^!7TU^8V9E(P^MM!"0GJ:W,;T,F#^N2CX1_/ MKQ,7G[C7 /Z%03^WX1ZNT,^]\BLJ^7$;^"H8^9U4]Q65^+@- ')%?"G0[TX= M5_/)%1GZBYV3HI!!A]O@(U=D4 56&PRY#;P6C R/+$J+#81"T:&9Y?OFR<1HH_KFHSW*2 M9JD#_"7.]\V3!D28O22ZL\ T*&+]I5"1!:; LP[W\X,&$?@6"8=ZK=D0D6^1 M_MAL)BAV> V*L@O_'/5+=R& MOE+!/WKX&SA<9.Q8QLUDZCHOY/ */EB81MX"J M@-O8 \<(R)4#N(TZI-?%=Z.1J9/Y?7CV:^#:IA^XI#",T.36Z^8%;/_G&UIT)>?0UGQJAAU:0]0=0.1QP6W/HS,K4?/@80Y MD<:6N?7N.<#)B32QS*VOG\J*NG0\_V[TJ%EEM7+E8D?4_$/MSY_&IEV M-T64E91SN/7MN<',J7B&6\]]!3-T7^7A\0>>M7IX')15Q13%&3\R.D[%'47Q MPRDZ[HD[<1@FMZ[ M_W)74KYI%<7M/S%Z3L4]W$8 3FDG'R@LV>+6G3^ZK74H"!_<(<^\=R#7Y$X^ M:^/.I36(>?&-/&O6-9U/7(Z:L+1'S38LXEXZ!Q:=(#?5E**3/IJ7Z.3.D74(.D_*\:IL @\DI;9/XH_LQ&+>^,!\X6DH]7 +[?JS! MG:>[6:XQ0/-DFB^E@.Y%_@IWCNV)\7 B#U;ASH,]/AZ614UNYKK"K??YS?&\ M2YBL:8=5UK[,;C4\37$W6ER>+;NF-[9!)C9\F.V%_AYH+D"&'/H 1H[HX-8_ M+1 Z\CL#H'"[NXSU"5;+,5'Y0JC!' M@>6-6.8VU) .RP!SQS8$FK>AF=MHQ48T8X$N(:'?12IWL9!<=2\_@%:Y"W84 MV\C9^L$3Q?!SI1GN C-G2#.F72R:X3;B5$R:X2=XI7(;O#H;S/(0K5=%T(PK M,CA17ILJ@F:G)H,#I7BIW ;-+BW-\^Y&?V@N;C3B M5.ZB?:F(\XL@SG,@ M3NZBEH(X^2/.$UGF;>XBO:F(\U(0YQE(SC9W(65!G/P1YZDD)W>QZU3$>26( M\QR(D[OPNY"<[Q'G0->=P/:!/G5BOF WJI)J=.[V P1=T70)5=T>2IY6*(; M>++8?#&-0+-BDO6_R(MIWSJN2_R2IE9VN(L_GP@9^\N33^;;A4L\)W!UXK%? MQT0SZ'Q@.?U?X2\*=E,U1G)/D7OZJ*$JO:$Z'.J&TE1&2E=O:VJW\T_DD,4[ MGC^S /P3TZZ-">:?72ARO:-._<^OIN&/+YJ-QO^IT$?[OWI3S>[_.G0_P0#L M9S;.VF@XYYIFF<_V!6I9XE;8R]%]W;$<]^)O#?K?YQ$LLC;2)J8UN_CE"9#E M2;?D57IP)IK]2]73;*_F 5A&[$'/_(M<--LP0?KK*YMT!\:Q3)M$BP":@6G_ MN+UYNKZ2'I\&3]>/RW/F<+:/UY<_'FZ>;JX?I<'ME73]/Y?_,;C]_5JZO/O^ M_>;Q\>;N]H1+D%,MX0_-&YOVL^_85>FJ?EF79"3"C=,&:^L9",]WIA_C^[W]KMAN??P4^LQW[-@!;U-2ED!T?R(C*MXID:RB[L+S*E:/3_%RT M92N4$T?P0+_9J/TWY=;%*/TTX &S'OQW96U*XEK__ =+&#ISB8?HVGZ:/-& MLQ@Z+@B=&DS&TJ8>N8A^^&R8WM329B#0Z)CTI<_A@H:.#]8\KNGS"W%]4]>L M$,T4X^QV*&]ZO7I7;:'(\4&V^4;TX5 :U6&.G]:O*R"RVHEW&O5FXO5-(_5: M]8:BO#O4)SHS-CM8/T+IMTJK$CT\U0P#>.!"GKY)S66JMLAH#003TS LDA[9 M ]?4+.F';>J.0:3OCYM(O;$-W4RP9R;P_P[ >""N-7L@4\?U*Q*M?^N#YGGS M+T;F&S%JOAO,>0!,@'__6Z^CM#]O9 /?.!$HT_%-;YO,H(#\[Q^#AZ?KAV__ M*SU?PQNGZ2G.PDD^Q.(;R93FBWI[D%JJA^,C^S"W5?IZ3^N MI9CXGXO^P>63!+>;O9:R!"Y*@I\HDVV5(T<0JZNTMD&L.J[DCXGT9T1!$K-V M)# RB2%E)\5[^OHU,U&7"=& *[4)##'&UVJ&-JO-B.;6B!T19JO2_X[]2QD. M6LVJA-;9CK*:&Q@[KA#;0FPGV24N?,ZDT:Z-W/:2B2W"/7F4@,%OO_+?E.;F.ED=L<0?C2F4Q, M#V,4TL@$L6T'&&NXR* 3KVGXX2N\?$O?C=A8Q1!*L]92.HTUY2:=T)_<*NGQ#?F,%AZ3'MA?TP7#CFYHTC:; MEVS?!J7'DK$',])Q"\ G4]=YP7$63E>K\BEO:JN>3P5A^CTZ.'N2AX5ZR$ MG=94=))YTMYNPKT45O%VV7+H5OJ=9JW1[: ME^&AJN^#*E$$]G9E>J9#3FKPYJ-B!H;A$L\+_\'#3,U(O?0J?;G1D.Z)[0P] MW?&E*]=\6;,ZJIE=X/!;E_#CG?ODO,YMFV:CTG\@QJOC&!+>S>U35&/P>HPOI_YI39YR%%R)5^3VFT M6]G-K52RYFBP2ZF)0UB@735U@7?,J69)Y(WH@0^R "Z#4B:>L*JX1R30L82$ MG,9PVIQ'E$+A[?C:L;?A%K&\7SS))Q:9CAT["NM6T8FP L2M!(ZV)N&6T(7T M(;TD0?4U@#>79$>KTF^KC57)\3OOF "W=XTR7/<&F4NDK!Z <8M?4>")ZC#T)0_##^B#,,]DH'N7V1:VW%] M!4L@]?X8FW#E82X:LT0$WP%I!)P&@B;D[-U&* 1X'V>3H6-] M2&7C[DB(:Q!-AYQ0JR1_J!2"8=_4FM!"F#7E(96R7!/I M$I;LL!HR(W!W)5K6 :4-!O:MYAG:G]+OEC/4++#!+;#")4Q:)_[VJ$G*Q*L3 MI1/@R20==Y^&,TD?$_VGA,=1I=]GKO3!M4%+ %/:) /N M@ON*CTY=HA/JS#9E-@;-N_6D#S RX%7R C 4O+&#.1U1XI@_UOR5!4FOVO*D M:284?3EJI-F&]$&.K7L() (/#?^%9 OT>?A39Q/.!BF/WIT)G2ZFN=+ MO08;P=!F7GUC#EG&R-YEX+KP*99?B7+'Q]K=<_KM5OK_2[Q5&DU*6CMV2JG, MPE)AEGZF.>1*_^LHN'7X@H^2-K&P"!)$0OX!UIF8O@\<1R6IZ]BH4:R91$"[ MS*0;5#2:3L.Q5YJO29AAN"I:%F/$PR,/@448WI2&BH(#?(7 TA:RY['V)'W M'SN?Y99<#Y_RQR;- )MB!MA1Y R;_EQR$.]C;B(A!CZ$7B@AYB*A)T1"9I$@ M!,/A!0-PH"99,&\B:;H.@L'5D+N1.5S4P8E7)2#A6N(-;P(2!;[B1IH1&&<" M0)A5T?B X4!%(XR>I6?7>?7'T>TZF"&$SLT@(].FF>=TL^C?_]:595CFAAG2 MV\W/T6.;'XB>V#C!Z$$T.\)G-\PU>M*T8X(//,.:'$6&XW94O4C)H'*SWMV2 M=YEZJ+K0CI6S+[G7ZW-J5\3[M= MNRS>MZ]J2^BR2"@>G"%R2\2ANQP?A]IG*AT=F.#%K9VX]L5]#PZADZ,[*4A1"7P(/!O*\K<42FNFJ M):0442D)+=_'BD"VU\DV_)F3:@25WRE0+AE,MIX3E^5T!\53Q]_;IW.21^\X MHYBUE>A#FZ.DN!J-IH$*M!T:# L\YL@" EBUBX2SU. +X[>L&7[\U81/PV6#&[]J, M8;''"@-5D3U=(KWB7R%A?:6A?1"L@6TRLJ(I'6#F+9.:7 '.UTVP!+W?*C>W M7Q.V#FFZ",T6>:1#W 4^%>H@W99TJ53Z7;G: M513X?WYN,YIJGV6=>)&\6<@L#& V.Y\]*77J2E5R%K.L;Z2TE;*24X>IO0N7 MX&;0"UDK-+D(A]+(9F/QBC;T'"OPUU_95ILR:XW,SKQ&YMA=F'[/I#9TB?:S MIHU\XEYHUJLV\] BSE9(\T )TJDJ5'EH7"9TC6UG1/JMFT^AK"^ M39*R=%LFBN=@W&/CYFGPY=LUUKBZO+M]NKY]VEQ@-X6(*<(^6*\N]_(Y4-SI MUIN-?,Y X*1VJ(G2YBMND_/)N?<2-1O\IE8FIXC?#WZ_IB+C]L?W+]\'#T_235WZ>G,[N+V\&7R3P-B^>_@^>(K7 MSLX$MZ,%5?/==3H&#I)Y].;I.JR=W:SG'T^=%T;8N+C1Z&"+8Y,#QRNL_G(! M_C&87O 4S$GC9B[2V$6W\V\I.@$TP,*:QQ-I&0.6*_OAAZT%AND3X^.OG[3L MI0BR4G6^6PN"2/(FDDL'7K0Q_ P_455*MW>_:!;0#I$>QX3XWDZ4DD-!%'JL M8K.T$[C.ANO6!CP*5BX^>EL;63DF_)V1=#7DKFIKMU8\>"3WB_2-=_!K3 G6#O$N"_ M+=B[K.C%W+ETNEOSQM)7RWD5.KL<6.\(IBXM>E5,#/-A3KXC;>#NI*BKX.Q2 MH+ZW'V<7:(-'%AL\G-,C-IS_KMG:,Y4POWC2E>GI >LSA4>:![9FS3R3FA@+ MD80RBV6FXS,/Q LL$18L)6W(C;,15BTAK#@GR*Y*TQDQ'YKF!5/I Q>LZ'<4 M7I;C!9B^K V=("K[)3V8WD\AD4I! /*>CE&!))(B)!+G!-EKTO",[P)>J#2Z M=QV=&"B A+@I!7;E[OOB9B5!4&ZL)0BN)]+FDOF77^N@\'U6F!33KZ,+K!SI M49K@IFVEDD1&!_SB&AG93C8*4J*U*_XJ,-+J!^V.*55V(;3IN3!@)P5,.-)^1X!$;)_Q39*_2_P[O M@!4T(F#\Q+9NA< I!WK/2."H0N#P3I%-N=*_HY4X;VQ6+@^&$J*F'(@](U'3 M%J*&>XI4*_WKM[$Y-$7.?EGPJ6[) Q'G<8J,X&ZE_PAPU7SA?Y0'H^J[VS]K MC0;>K;UYJK+EM*%<5)$VZB"']4[#:Y+E/#M5Z?KR3GJ*VDN"1MO.E.@ M\]G:D-+3]D&P$K9FVIZ$G(08URPV;5H#&P:*K0$7MK8(NE)X[G5LZN/$.<'O M)C9(\*:$-2IU7FUXI2X].A:!:;'&"O8+L4UBZV3MD['IP"@CXH9]0=-!::+- M0LC2G@V8EHX33"I??KBRZNVZFH+D$FIO8TW66JN>4#5UJ'F$R0BP3#O)!?Y/ M7B?^M%7BW2-C.;U<4;KR23LR2-YL,@1U>MJJ\-$K*4N<'QM(>>[K"^]Q, M-E7!2[X7L53%E?.IWMA@3#H!#&$ B5R_Z63J2_=@XM)V*-)@@JVNO/DZCEPN M7JTW.VK66^J]58K6X?BS==!?>0WJ?>;.1\\>G+4:NUK-G;R M*1;:G4**&E,Z5>P:;FA:$/+=7,7@RUTLQ66N[Z?;7*9,1YZ39QB/'DCYS)P7>!% M2:.8O]@)]2OKSHR=0[V?$\M*]-\6]YC$BFL8'=+Q!_)G8+YHUI*='>(TR_(; MTFF[K*1<^]_W6N/GU: W7XO;V+LO\(S5QGVM>.,^_(WU[0N\VK.F32^01@:V M@?]<+PADX%]JKHM-7/^!??/2M>]K1>W[6N#/-[O55G.]=5]R^YM=V"\UCO)1 M*H)%RLLBR@E8I DLTJO*;843%LG)M"F(9GP@GN^:M+DUZL:JI#.C9Z.Q(V># M1*($*#B7;%$D"Y BHR10/"9!-?8F]W?([A :(8TA*FACFP3=2AMXZJC1XH0V MSLM)>!P[KE_SB3N13/L%$#5)\A!2$7M:4ZC@Q+Y%$%* /@$\;Q;@S&H=*)6^ MTJPJ;9D3ZR#/J(R@H&WB,@\*PH1 I=KL"?OR%,2PV-P44;3W:4A6>TB-"..VO'")H/%P:=LTJY=J7?KBJ*4).E)*4M:C)? M4NI4^LUFM8?EI+F@I3P5)O]"EI8H!7B'^E+$878/Z(>0_,/TQY>!!XLB+MW$ MW8N#A5EL=E1.*.B^3]H<]-"V+&#&35D1\ M=A>Y$3@7ALB.7*%@[^JJTFAS8H,(>_:8XO=K/@J@.U[UK2W M16#G07LMF@?24 I!>WE:R2KW5O(WXGD7DF99SBN>F#D["_E#GF'?"(I?'9>R MS< VOCDPNP7[S&V=-1[!W=#U5,*/PAHN-LEL"^_N0S(JB-6$W?.CTXPP?7VO M*MEDK\RZC3JMD#QR@,VT#>QQ2_P='<@VM8C5;N?05DEIS.'2DV+*S;C<2;%# MSQ)TNWEECAZ.%,\K;Q!SDVS?<IEB=PXN50M.73MZ*'(B=I6H(XVL&8K!& M:%EE=I1]-S-$;>!^=5/E9;]:9$ <4]@>@)Z:E)YD7C)JSBO_@<4I[V2P:UCZ[NQC(*.9&/_4XK"*.:1K#(=ZLZ3K%2^ MR*ID==XVAW/945.L&0Y KV%Q<<**5!+6_M6+=5P4$=\](K[AF=[(D5QP"C-@ MLO)+FZ9[]O*RDPMF#9>=GE($@G.FIPY?]'0>YB[^7'-&M< C841"JDEW4X(] M1NQGR2*:1_9/I2@[LVP1OG-X?D-P4IC?C7YXA/))5C;I IMTJKUN7JF;POSE MBI2VR-U<2:D'I-2M=AI['SX6)F^6G;BP_P[NP*&).T4MNKN(/1-[9.O>&X/J MO:6!_6$;UQ%@LV]4M[&.J%KM[E\93%BV/%+2UEVW_"@)RVUB.:2]$QJ%39N> M%GYW'./5M"QAL.XL32,09J5W&5TXIQ!JY*Y5^K\V+02!,RZ,Z[\DDDDU=/"3\)7AK MQ[R\K+R%)_^4'FC8O4\X'8.W2N:M)'<#_&9J0].B*2 T:O[H._K/L6,!6+U? MI&N:)I)3K\ 6X,!P DP_X;!98)K9G46,+^H6:"TH0Q0[+^ZIWGFQ\ZDV2ZIT MOK=?660-7_(V:"F+3=PSRM@MR[[=Q8KM.92[XB?L(EBBO"R1LNC%?BR!R1_5 M;JMDZ7;%47AN@&=,G D>[M00\&*_6DHJV&[+Y4%$+U;4L\Y*P>5ZV;!2+FSHN)0AGQ(Z-2,X09D=- MVZ1#)<+D\2<0^LQV91T%'L-?D)?]*V+JG.T^R+RFI-*8@\^(VG9>=>T5& M!+"&[95>B!V(=J'Y=K-;YXTU\F]7^@HW 35ARAY3CNY(,9U*OZ6*WI^G2^73 MUS>21<^DPPC5_=T\//K83=R("MB<)V.Y\"*PKTR) K?V+98F@+8_DM%O0=G=R:M%"0$UQ M!OLTTM<@0U'[9X_ @#R">!X!6#Y?5TV8K3S2T+8002XTI%(Y MVFOLW:]%6+%9\[NLA2V;3RBW[ R1IIQ%+'"V.U/@8>6JW.7%MA"FZE%-U=S( MJ$/)J,V+QW..K8MRRIT]ZZV*])MD61FD6^EW>E59/7CCHF/NCAVZ=]$YD%SZ MW;&L)->K]+MRM;%_E^1CD-Q9&,.7SF1BLKK\M%0"AN-A\L36L7C"!^R3+34; M'_,[*Y]5^+UYYH5M6K]5?#<@ZYL'\]EC9Y?XW".:ZS7@DZO4QL&9_ZP65X;Y$HT=#E'#YR^:,B7ODV#YWHVV M^3W$=U7Z^WML=D_3IL25/!SQL[1Q-?2^ MM]]"Z*R]0>"/'1>(P,AH;?24=Z"=/+]LB-]W?BJ>96LD;&&O Y]-5]+FWZIF M!?TN2[L+?,\'JP!8>WEM(_.-&+6_B.LD$%4[,]AW(8O=YM8YRMQN/"]8)8=W MI]4]"J5FGA:8ZS ELIT^4U"P23_.VL@O4#=7P*!,1-AUMQ[R,3Q3>;\5P7,) M!+.I@.?5E9OR9T["9"+:>DQ7?D_J:?)&/.3 Q-& MDAF7 N[9S?*L$]MHDJ>878=&AKM*&FZ,B ),R0.3^8Z@SF[.9YW8/J#&('RS MVDTX1K@1U,G&NZ1Y>(#BN^;J8Z;O6\VJ)#=DE3YY170R&1)WZ992E6# *8'Q M7X@UV\/^/Y,\I/1,&)IO:PAO@I$O#AF7DCC2BXV-Q-'DASC.JPS. ":-P-8L M,"]-HV;:DJY-35\3C>CVJ#,V!^H]P/3&OF00S:HCF^"JM%NM:C.WH\,B+L(5 M&6TK-)83&6&=,;E7;7=X2684 1):2S>8!+14I^307&"LJNN2,;$],$HETX;? MB;!,]R_Y&(&9)G5>QH%\0V'\S?&\6^+?C9ZTMR3V4;"U"B?&B;! MW%V5.2&>,[-L8P+6("-3-W<[K59@6^3#7H+4@P7 3ZM,\4!\#;YD7&NN#0#Q M8G"^8F#.;*"T@4FZK:K26Q>S:SE_PL0M%EFMB=CCD54'R*HM5[N-]<.11R>K MQ<^.)I:RU7&9VZ6+YFRIXBD5(BQ_N7X"W0B8Q"B7)KI9=E&M&>LIH< VQ2DTC1'C<_")5('*4_BSBPC?V%D]PX M4-OJ'-!Z(@='<+;@[-,>^BTW0NIM(R.9'IPC!)MA.1/X] RS?FS'A\%]1_+'!(A*"PS3 MIZT);8/8'ON)@I<& $>FK=FZ29U2N$#/*-8WKCG\LBQ3&I\Z'MV&NW"QLYKY M0CZ_FH8_CN@[]EZ(]\;B%6T(,I M]C=.'AG(5(V1W%/DGCYJJ$IOJ Z'NJ$TE9'2U=N:VNW\$S<>PY?&[F(#[IG4 MAB[1?M:T$2SP0K->M9F']!L'"\ DG) BUSN(ADT0S)FNDUX[/E.LH6FMQ;S, MLJP-\F9Z5>G&UC>3,S^SC7CS,LZ;CW..Q#R^L$H@/,#]>C[\B,3.QXUS#?D[ ME S=D[#XAMG?V-+3V E@# ,HZ/I-)Z!S[HDKT>1.:3"A[7KW71I51PL!2=4? M+-'2IAZYB'[X;)C>U-)F%Z9-)TI?^KS\ 90!*ZJ/?H_=#L5#KU?OJBV4$*&# M'GXX%!YU6/BG]>L=N=YM=1-O->K-Q.N;AFHVZ^U6)]-0FZ^WNFINDU*2;\6& M2O *(K3@^;O3/+4EV)(Q(^0PIO!6"X;JK&2+<*#(>6.\.;Z_"+;G0]Z&JNN0QN0+2XGOY3CUNB')3 MS1G'"'1_4QO%O?-0N%MPYI@K#U'3E&O+$C15WP^:AL+JJ^M,DIJ<@-MG!0B6 M@><1^&/0/,:,<50\IU!MJ'LG#O"3PB78I:SLTCX]N[0J_5Y55?D^U%- ]?U> M'V3>U?<#\0CUFS&[P@ BM)PIQD3+UA;Y !S=.3U'XQ&1JI);0=F")<>5G+ZZ MIZM ;CI4 M%N X3&'RK ] EKW3DR5V*^E4&[D=%#]!(F,!M5 !0^"7CA>6ZG?F_5;)VQ2S M._8+BY\Z\BV"VSP:/4ANF!PT?3_(G473E%R9;+%Q$*!WH]\=QZ"IM,1],77B M/3I6YC)S;=&34=6>PG=<2L0]#^2/YDE*>!2G6945OOM8%U#^ M%]GL?R067'RN2L_$!B_3HGI ,R:F;7J^2\_B"!=@5U40 O=W!EK@XL$28'=E M9)GJA!;GAISP!PZB$PY$4RU*4]WV>JUPGFB*>^5P^@GR^E2Y0K;O;1SJ[P1N M#U*;J>P2,46@#6,CH>CS,LL^I=*7N]7&X:LR% M^8DGHK@"JI,"YJ%@X5MIY#J32)'$3VR?>S9*I@J9:QID0X7,NTAA+RH/9^;M M-AXEJRK='"IBGEZ1B)R3_8EO39DLF/^(1:*;:7<:Q$6"3&+-;Z7?V/XXB-G$XI)(MSD(6*NE5^KU& M7FZHD-'%-?WG,IJ&D6COFC"$5)5L4IHN"R>U]1&JMX[M+)M=\P#Z&G#. MA(UXT3^AV 23VC[/3##-2E]MA MFZX+TRV;6Z[(-";4[JR7MTXO"T3+AW+1<5JUPQ,=MVAX2>FM9YX4@8X+J/ * MZ+K3LT-K\0FXS,I!""@G42^"Y[(AR5 \69 M4M.("C0B$KV$;W)+?,D"P^(PZ09E*]J5;?%\RYV#>%Q 3KMO72ILW[R]U]9E M$1*P!',)YMK!#=R/N5A>@-HXI.-6=E,@NAWA6@66SM?&3?%^#/H)O8_V'9V+ MV7&#\+.P_:0I [KON[DY3^0+TG#2-'J5?J,NKRO _35B 8Q*P9@\ MK6TGQNSERP]J8S>VW'$:F^6#VD3&3-@FYY4QN;=/3C]!7I\ZA_V7/^@OQ) T MF)7V3&"ADXF#TW#TG\S2\Z0 6P2:-MZ;!O2$HKV+/7BNT7D&Q8R;.!%B!@PO MM\%D2-R[$16/WEW@>SY &B 42NQL'KXJ'VFZH2!?FW7F"; MF1"[5SOSQY8-K,/RAW*DZ>;&'VJEW^Y5N^IZQ7NN^8-[)7_Z"?+Z5'*<\[TP M9\J(WDD>XP2>F9O%YR;$^>WZ'O4;/\>V[\HR<'9L^]X6;=_S0M/9M'V_!!YW MR1B> TZ3OL7S/GA=5XG:OXLF[V?1Y/UL^F:7O9GZV2 R%MHH4R]OT0!]!Z I M65B@5&D0!SN^4M+=UO3KYSN$R5\BK'J,1-C#I>L=)Q=6<%EYN>PH&;'J,3)B M\^"R7*O1MSAG$%IB@6Y*+P(5J)UWZW>64U)K[N_GV6!&5CE'Z0_;)3"-O\#1 MHND%P/S:BV9:&)FH <_6/ WC&F/']6M@$$\DU8&^= E-4#3;U/$9V<*.L<]P+)@-<%J.ZCB/%F-M8Q3Y?6"(ARQVL'2EC:?9DSK$Q[@ M0R*I2"05K<%;S26IJ">2BO)"T]DD%3WBJ9*Q8X'\\GZ1KO\,3'_&_3N-=.HF3;[ MY5*;FMA04\"I/]#U8!)8U !CFZ3+H5KFYTL?,-Z^YIJ?.;RNR,C4SRSO;T6B-Y5]ZEUQE2>;/3582IE1NF_2:+$R1MDAUWT2;??.LBT6 MP 838)$\)-%Q'MLU464G;+TK#JAS>X+<^2^:I=DZD30:[/A/S0XT=R:MR@,6 M=H=/P4."AXK*0]G2.5LID\QRT%EM8+6V7.TVYB5$Q;WI#?O&):N0_09 M29R(1^-:/:ZK=@H2BI7+Z%]@1V#G")+YQ(*YT^!+,!>ZTEH>[H]++*+%O1_M57.-W9R?$I9V MX,_YH4FH29S5K/3;N870.0C=E9MD=E.I CL".P([ CL".P([!<2.:!!TED\) MM)_E4P+M9_G4&>PH4P>]-M18_9S)E-B>ALZVV#(6466!'8$=SF+^6W9C%\5@ MO2=G41< *P+F9/GDD[HNI$Q:G?""Z\VS34>C& M0>8] KG2EZNM#B][!((8A:@0V!'8.;T@+Y@<;_$EQX4_>I9/'6F+?V(:AD5. M(T0V]5(3H7!N0^$".P([ CL".P([9X>=; =#V\=HRM=1\FM]*>B'*_HY"OFH M_)#/&6P_;6K6*+:?1%Q,8$=@1V#GO+&3S4#HY-!I,NIS=>^X^,&![[OF,*#= M*IZ<>\TEMI]D-K3W;%TJ"$JPN\#.T3L6[\CM'3ZX_=A'_OBHH$P+JC,&7JNJ MSE\5Y0)R8=8S@-T#EU#N="O]KESM*NLM)',N0\1#Q.> E,:;]Y]?D:^25OC: MREII"E)V>D>HG"PX1W .5YRSUNHX[^)XW4:EWVZUJLV&4$N"N0\"OIW ML3&X(EA'L$[162=3U$).&[;(04/)E;[:;565WCJ;Y5<>67"8X#">E%/KX(9? MJ])7>M6VO'6E3WVET=FA3W\VQ37T[KY;PO?PZG9=W3KUZNY%?\_5\YH1M MZM5L0QUA4HUZN_5^1_@33>I]DA)MZD6;>M&F_M!P$FWJ19MZCMO4N4(W>@3W%B^*6?_AO097*?R@$VTI2]T4M5R6WJ%XX2JL\BIDK=U(MTWIZJ+ M[7Y[U5Y#+4)KMU-N$9SY+D%Y-PJV\EBJ76RUTB]$=T3!0H*%\F>APV^V88O? MKE)M)N3;"RX37'867+9GH]^1^4:,VE_$=9(8K#,_%"483#!8:1@L6U+66EW9 MPR5E=3%[I%-56PW1LUZP6AE8+1.GK14!RIW!\+A+N]IN%B*R<08U7D33>@[C MBVNE$@[0M+[7J/0[+4Y*Y@H*$I41"HR=3#HVS:G1;*V1UWF;GMX1S%T0\A', M+; CL'-XT9OFU/&^DE?F2?**KO.BZWRQO)=-7>=[K4I?[;1%U_EBD(PH#"ZP M([ CL".P([!S-M@YY]T",*M=S?8]R;31'+0),Q5?37\,QN#0E\SP3;%Q(&(/ M CL".WQ%AK8%Y=.TO/R#B4#FV2:YL$JEWU5Y:5(IR$^6H'PN MDE?E2?**]L!G^91 ^UD^=09;<'1#IT:;O6-08-[M7>RR%29T); CL%-@[!S; MU:=[U53@7<;DW0/Y,S ]TR>/Q'TQ=<+VM1^([CS;=!2:29(U8[Z'S M=>P%,0I1(; CL,,E=HX<.#BJ'._P)<>%/WJ63QUIDWIB&H9%3B-$;HDOVI2+ MB+K CL".P([ CL .U]C)5@IDS>C?4 H$;(!%'^G,IGJWTF\VJVI"^471,[[0 M]',<\NGQ0SY'VGXZI;G/RM#K2V7H=S;_SS;R(N)B CL".P([Y<-.)@.AM=8\ M=X.%0+7.4N^3A<$ UL/=Z$E[NW=<_.# ]UUS&-!F94_.O>82VU\W&^1& \R& M]1.NFW'/K3&1T,-VFB',?!:MYWL335R\KWW MZ(/,'1=FK!G16NN[G6]'#4!PI=]I5%5U[Y[VF9!UHHC/ 2F-M^33]&5=LZV] MF-R59-%N8ZT4C33D1BN'1AJ"<[@B(L$YVSAGAQ8T&;62@OTSNM56<^^L(,%< M7-'963)7MDA+:X^J_NN\JEY5;O/O6B6WXFZEZ,2=3XO@V,K@HY+A M!$.++"]-?$A\:/U#E' _T6A\%-N%OZ*1)IK[;-HU1N<779 AX17*0G)26^^C M"RZ9GK$F1-)T3'+1[!DL4+(='P;W'Q; MF;9FZZ9FP;3A CT54U^.>,>@$GY9D>L=%68W=3QZ[.7")9;FFR_D\ZMI^.-( MI,9>#.'86+RB#6$2@;_YE1B\>\< =[.1"M[ME>V V-\X>13@IFJ,Y)XB]_11 M0U5Z0W4XU VEJ8R4KM[6U&[GG[)8A MK<;! C!90<,F"&X"6?_7H8L,L ')65Y+_?)6#94__M8:WE/\73H&>3.]JG1C MZYL)O0#+B-CY,L[.CW,FQLVL2\T;2U\MY]4K[D(__(A$V,>=%W&TN=[8TM/8 M"6 ,P\LV7:J'5M083-O2IAZYB'[X')W9,FWZ:M2;B=%9\8UENR&I>"TYOI!CY$8716JUW>V>_GC4$;8,!#/P MLS3NS@K*C?*=%2R$:HM5!\(@JDL ][H)OKD=ZCR\BC_K&%P), )CVI*3MU5T M:MOGH.:-K/)- U=D"G@W:4AZKV,A&5Q&(BC"-@8QX&:5DDT\&E5M]M:%I"CJ4'AZVE+'[2#TA(=OJK(J6I>WJ7N M S$"1A2@4''S4M= MR?F&G7 ?\"-WHQ\>&2!8XTQT_885$$D2N^#AF>;>)V?$"4C^B&>+\,V#>/#H M2&?OCMA\'7/)TYPH M2,VIE+ P7S,3P[WKO)@>DL$'#!K!S&8?$7V2[A+#9+$C!-=!U=!&\))YH8R!UWG[-!(7JB/SC1BUOXCK)-%. M9U[4I1AF*O=EQ,4$2S_!4KE*MXY=HSL])B8?$<^7"'-HA:^THZ\4#P[$$[>P$Z<:;M\(95R&\[^Q'A/83 /MF >L$3I$;E7ZK MU1 >4;E(9UM:4BZDTZSTE75E7-3BA(60KZR,N3TW1'TRV4V"%M:H.$@8B8)U MOHTUF*=MX:$Y/#,W/TJ7Q 8R2-#3Y^4):_1D)5]W)9Q6I=_<1_,*^S0S$5R. M-?L91EM.TZ2Y(S2YSS*UH6F)E,UWB:O5X1O)7^=U#/;("BJLG#N$?KRQ=1=S M.ZX(^_?&9C F#T0GY@L>/&Z2,.C'[F3F*KG2 M;U?5QCY;_<+XY9#4-AB_IR2U%IY9ZG9*5N>&=P'.LDHLQWZ6:'K>OI+Z/,R< MW>,0%-ZWCJT'+C9^76*8=9[ ?3)59.B5C'IV-Y*S48]:Z?=ZY6DA7 AY&D6' M))>\$#L0YT/R"SQH;:(,:7V0] !M@@ MZRFOF7V];J7?;%4[O1RB=5G*R/-N]YXS56:HIGLHJNQA5F*GNUYWAR^BS,F< MYKF[ #M]E$<=W7#MN32LV,E6RWURYU2%^3YP]3&8;7B>=.JB$>#/Z/8"^3,P MIWBX0@2I=G6P[K49/=[WY QT@*9+[D, WUN:[0]LXSJ"<59!JC18]50.0@\B M<'7$E)D#4A2MQ]ODX;#R.?5W ?P!T Q/&KG.1/( *3D+XL(&*_*4PR&0OP*, M'P'$=Z-WV&:=,V3@#!'B*A_5;*]LM@_5X/E37LCF' U:VI=55$4YL$6;7,TB MH^FAX%'M:BOAL**P9@M-35FMV5RH2<7=A*J2>UC+8 MP'O3VKL%@)7\"@ ?QVCFOCHL]Q,LYW[Z--PVDX8SZ4.XN?XQ5'Q'V%TON;S: MHALW;%W.-[MVW[I4NK1+:*>]=\^03!@L@ ]3)E(\YGYZ'D39PY+-5;6=0].% MP]'C&>RFSVLF'WPWG=^M]#/?1U]R?\D;<74S"D)B$S#)F2)?GEGL\5";. C1 M.P;0ZQ#41E;AJ=(]]$9"AIPX)EUX8LJRMY-,3.OTTLRE/X)H3U.,"98J.$M; M.8 32D\UT71O8!>;,#YZ-?TQS3+P9S0#P9.T9Y>0,XS2YG:6G,+[)@0W/1$1 M AO/1%Q34..6LC>8 SI)X&#B@2A^73*R>>]<>#YDTZKTVR6K?,V[?%VV_O&L M-]OO,LCPS/)G#V3QWWA>@)5K[T;? +BX17P%H,VPOZ JO#48%/;^:>S]-*24 MPGO$-(->594+XA"4RIP-$T=H#RS G62&*(6%>^=FLQX@N^MNA!P1\4G8!BZ] MI&WSMI,K#-@3)'4E$M$ZL70J?:7-_]GO H8KRK:9/DK88Q%;Z,?:0I_O<.V^ M6ZEV:<"]FU==4KG!*W*))#DB)/6J\YQ?-+_SF^:FEO1%6CZ&A:4!ZEJAP?Q]+OTQ,=Y#B),A[^/_U @J*(X63[&?PK' N4RL82?,E?TRD(7DV;1M]#V=$ M+TPIK8C0_B:&5=XW[?;BT\QL)X.UUZAVY;Q2=POF7I2;TN0V3Z2&>Z_M:KO7 MX834SL!]R"[-"79/>$^.[ZQ]4YEBO 'P[X=;?FFD3(LG(8/GY7O5[OZ!M*SX M/)&+)-A1L.,*.ZH\\2.V1.Y5V[DUVSY&;9AO;3&#N+1VDD\:/0;3J45S_S1+,DQ/MQPO<&G5,&KBC"SG53)M M1L% @FE.(>6+FK,^!G0#4@JM3@G[6.YC[)=,526ML#3::&N?!483]T 2MR0Q MTHU]%%HR)SYC#N$)0>GEI/2M'7VW4GH'6_66+#I2$,VD.Q,B^=H;\;)II[1I M;;RM.+,C54Z>W=X%".CB"@I&*";W M5E]\G;#B@W13N+L \1IU!CZ0@2_-2$876\CN0LON+49,2#37,9J)CM%^"?Q;Q_]?0IV2 MK*'=3H/VO.^LG\(6U@TO9"0X)(UUDYY#UIF@6>FW$I+63FCT?/*UH47@7\-\ MZ?]*_V*S&+KX2#BCZ.;*7H"8-D;O8=-U\(9]?3<,?1["/O MT%1[)K6A2[2?-6T$<[W0K%=MYB'TXRN$Y:U =!,P-JU^"[ZRO+9""<>&Z].8 M@&JQ+.<5[5!*G='A)4_2))< L^JF9=(]F6BS)F76BDNFCHN_8:$6TZ9Y*X&M M!<#&^(AC&\3VV$]TJU##RT/-HB=BO3$A."ZM1/9=<_4Q8]M6LRK)#5FE7X0? M%,EWZ,B^@]97F![C@0R1O$ ?2]H$>!D&\L;.JRUI0^>%YNJGFHOGPS_T4.#2 M-M7"2#^N:*4(6R(AAJ_EK468AZ5-/7(1_? Y.I%GVG0X^M+GD,]#"8%,L"*Y M*!&SVPO^J#<8CX0V??CE\'8=;GU:O][NU!MR-_%6H]Y,O+YIJ*925Y56IJ$V M7V]UE?PFI6X;JHAG,[GTMY,MCF2=/E]3+\V:F*SF*8I Y9X$(B]%5$!0P+L4 MD)B"L35+A6_R0#V8UX+3YZT4'VC*P=B)PX/S///L)4UNMHTU>_)@795+%AG( MO/S2A U2)#;3'A]+&9(#_U)SW1E XQ^:%9#,434L;-BMMIH'KZ6?(%4/G0Z3 M64L(GA0\F3V[.7^F;%7Z:K?:4/;.8CX=4Q;0V"C>>:N'Y?!45:)19-NG!@C= MH@U_%W78=E2Z:T<5]CR@T,$#0U6UG=?Y! YVL00MI546N1.32HFIRW<[P )J M@N*YG4]TJV#W;EZ$!?IYW7 =LB5*H3_J?P/SD^7=OIY'6Z M5OBEJZ=^U7<._1ZC@=S*T5V>>MOM?H*9$V1O2)$Z8F),4Z:),:87YL.0-ZRD M1KP-#>$Q-^3ONYL,ZJJ4H@VIGU8;4H?RI;V0+]U*7VG6UU6]!-"P< YHR6:; MF)K/S+!*:>?=F6W-ZJFB#3[%)C(OQ)K5I?=,]BI]:P-R4B00O1*7Y(K!!#T# MFB4E]+H-U!OU]>Y^A\/K?O-M5OI=]1ULKZ!R+6MNKY2Z(V=?/1(B:;KN3.#3 M&+'&G'X8/$Q!VYI0%I[X $I>I):M T2D?<[AW=V<]HF31Q(T56,D]Q2YIX\: MJM(;JL.A;BA-9:1T];:F=CO_E-5*R7)%C\85:VA:RZF069L^@[R!OKRQ]\?1GG[:]SWGZ<\_;&12UG7W9/PG')R_SP(Q)B']=GGY+? MNI6M2YX+&1.!"1_O4I/^5(B5FG4IU*BWP03&T=?/\:P4>=?P+,+=Z&Y*7)H< M[2TTHLP4L&D'Q!CXX34<@H#VG")-NP&I]*_@5]><1IG57P(/YN9YD2(-)[+" M&7 O')NE9,^_">/S!N]DF7Y#LZ\]DH/NK-)7\2"WW/A\R;1RE?[:_!Q=?B6K M5P)O?@5-J?"J$[C159>,B!OR.A5L52K9Z-,FYI('0\\T3,TUL5$V&&2K*>R> M^8Y:YQ8Q?Q!:F,EY(6X5[$6PUIQI52+V&!/RF9$-EL\$.PV#H/H+$0C/5*4Q MC($%*6E\!'/WB?W7#.>%;SB (5?2+"!@Z3:M^MJ"H@D6%QH']5:]81T>4 ZP0$J?>D@4TZ)0\-T M"=VW("]H\*&$\(D^MN'SSS,)O&T?L527BD>=>%(E9/%?@)#F8E?2P'N#T<&> M,\+-F_#822A9+L*$('3?$$+WZQ'/WG A-*@J&@K!L* M7R@E@>R\!T\:2PKX41C@,9A,4&#"O=BWI<7'I>CKNUD5=#()4Y3G@?F4D*%+ MN!NM0&7&_DZ C+H* UZHAHYX@4=233T%'6U&W;UK@CDSM9A67+@2<+^8PGDI M+K*3.2>-M1?L64!LL ;(5 M;ON/ KD$M"]KR_9G8()HM:X9WR!1'TQ8$/UW M-3SG]\.F$Z%N&07V@)*L-I?DOP\&]Y$DI[C!M[3I%%!,I:$;6"1*#'@.K%#O MA$<-'T&ON+1V!WTBZK:!NFIB>E1O1-]YO+Z-WYL1S<6BZ?#2%=$):LVE&+!"5Y_J)"J6 M8$\> XC68S1K 1?<$782SOC>K' ._R%CU0W8WY1-Q5<$C-J\,(@5=T5^[0G M3:0YXHP4:@XI\!C4&4_.3P+O[+7-\>./70*V&V!V[(5XFI]X6]T.0"L/1S8] M'W,T0YIR/.:S!%XX1Z:W(],O/0)"41$:F+0T6.>SQQ#\#J7A_'!FP32D&8)E M;($@;* 5SP/53$$,3RQ$F^TL09R)"R\BZVW(0)2BN '/(WX?RPI-J'SS3"3: M#?1>3,V2FS)Q[,7I\+EYGEDR52-J<::F'3(#3#D05.&.58S?A7$-LG MU #[(+8M/%@?N"YE7AI(8K0-$@2^.Z<=).,ILQNDD6:ZH/&01!;SBAS4+;M< M,$1@L0G$_*:("R/1SUI*>-$7B<&D0W0[&@3)'>52-$M .3QC $%2[RH4#-'3 M^!%@*&D4T%4N?PN).9H%?!%D%Q79"5Y'W' M M5F,XZ7C+^-)G%[U23>G34B MG>*'9EL0DF=RN.MU[("Q57->4?O&8U]U:6!9#*>AZ1CZT@P+@#9*8EO >M#I,U76$SAOF)5 MH(#;E:CQ(32+37_&# 1J!85F$=HQ*% QB+-0EU7I7X'QO# Z-<\+)E-&L=0B MFVC@9M"N>:%<"X-+45T1%.I@?& LVC*UH6E15Z!*\Q/\&2J#%P*^,QN=UH;S MYKZ$11>S4@R?.MO/]%P*'9<^&QNZ+OU!0C\$%0*-JWIA1'UA!;R.31W;4,.O M5$*'2PAG0^NZ@)WAT^UY \/=J'C"NU6:0&'[CDM7\J)9P1P];%GQ#(NJ].PX MQJN)RLXU/1;.]?'98;BA 2(&WF*:"I,U=!VXSE@&E^>#K).T5\TUPGP.A/;B MTQJ6J DEB^+?(P-NJ(;D*TIKL>4.)%.&04 M>(^+%)]83DKQQ!XP,-T0,4PM#B0K#^E%^)Z 49Y4$Q*SO!?#$TH,$'B$Y3 M'GW:,@&[!@KJ4/F%DOJ54)'F$19%\M;I#2",!CF5R>I99<$C'51N#GM:/,60;@9D'BW6YBT!!3*> X]9(S-T@0]<6J9A'OB MS"0,PV& ,-P:-Z1G#?>XJ>WFH(E6!8>96D6TD0'E6(T&YQP;!270- ]US9SD6,YH;1O0F&ICLV!H81*8__S8S!S7J@5/7C[I>85AZ MWOMGL5\?&JITTE%6Q&Y5\Q8!AQ6ACM[B"K10>SDL3R *U%A4:&]*O,8]5TPM M15T )(-W0Q%O%30(R5D%CTB+KN8&B>#;+XP9^6RJ Z&)L'CH)&?A=5.8]%QHF3AAS<,$CQ,3 M;I+"SQA:82M!E1W2\IA0%@5 OD:[+C!A DK_)[%F;!D8H*.F8QQFKXM-FG"C M(!QX%=3PS A'9 XO30B:1=-- L[6-(%LF77D-;9-[#HV_*@S+MJR:=PKB9\3 MW[Y?6C^78F/CXI(%R0-!XPM#$H:SOG?+_6JWI39&&R\8?6\QKEYD!L<0^^@# M,V.T0_KBH#4?[1%_'3Q^F6\24]E@)+_V@VXYS=\;//Z8OW;KU.GG:XU>]<#) M:!F1+X7=G&BW$NG#DS,%>=!1&A\OI)L)UAT.M24(IL63TM5BV_.4N75L/P1D ME6TL;1H"Z".1"N[ET*(B#D4NC6S1#7KX0_<00UU"]W5HD>7XEBZU=")K!JP8 M\DPC<-%G7$3WV$QQ2 ME_2*%E'(GT,"S&8C\?VG!HL 51#M+5'["Q82G>X)M0$%2(P&)1H<'!(ZH85' MN6'+-<.^/LYISF]+.UY@\(4;QJB%J#7A2'-?/U*A=(5S50QVP&+].&/JXFN+ MZ!\:*SJ=TNY!ZN3 ;Q$-P@$&*1:!)C>U6,YK>C M+BKS[\#;BQ'I!GR598VP@WVV$P[^SIAHF\9&GQNZJ!E1XDC?@>H-."4&'95\UD1RN7BMVG]6]1E<&"O?M(<^B4M'U?R5"M$FAX/U>-"EMI9,P%O MK*U4)RYFKU&?:64K<)YN$04]P*6=.ZFA%I\KD#K ;*Z&(RFS3FMXI]8 010: MA^=';E)-NK0TF/ L$MC7<\/C"KY[2OJ*HDB8U(4;= ,8RVW>'+8%ERUY:!>8*[0(M@Z6G*('XDT=Y-@P%A;F/5/S M/C9>Z,'26&.SA!D7@,PQ&>>[28^U_Z"*6+OT7V\"PF1U'OF,[R5F_+$ ME_+.B:\MVY G.>[5RGK!!PJ(N.L1ZEYC/3^G MUUC/SPD'!B*=IVGM='Z+C9WP17F7O>'3!\;778@04MML@I.1VPY=UY:.]@Q1 M("]'[J(/D5*X\ MH31*4%UIDD@Y$[-72W(S+E?9R1\F@H&5J2'J!/ MP_LX[^Y8C.Z*:EWNY-3( M4*TK=3KC5]W?FD M)9ZHM'S*M66JH=O>UJ[FW5C0]5M8K&% S^L1XTE[RUI1O@Z0E,K?0[55E1."&P<_=I<-MA#\',8&?^Y)[=[9$[\Z=IY;0 M('-[=53NLSHC5I&^A,5#]ZCYF<1VR&W^P#:^A04'9\DI3JW&>G8N7$M5/8^S MQ*?D_%)Z",%;E&@-JTU2T$#XN%GL+DNUP6>\+A%C9_VF;/:S;_ M1HOC=]?QO$MVH"NCE=]J-#'*V\EM^TVXV)P0GF"WK2'P4[";7.DKU59GO8DY M;^QVU&W*4Y#*CP0'9*^4JI*)A9)GC;W/_!%Q1$+ >Y@326:6;V$R95<1R92" M+;AGBRTZ,4^V4) MY,;>AN=Q=G^C"!),E&SFHD,^=3Z^W*)TDP%Y9>5\G?P3-^E_#8XG6J#$\K/OEF; M,2Y^H,<*LB6ZK?7(6..R7(LA[9P=<7/[-77LYI(VAOCF>%Y8ZW'9;!V9;\2H M_45<9\Y&C04;=?;(GSK:)+N5ONVLL?K:!2F1#(Z%;5QEK"4'UD1VGVE;\7EK MBT5ML; [85C#+7TKYZWU&U,RY\EY S?9@9)3S-:;(KL5_IF:? _V-1SF?99H\7C_Y[)O)"7[ MUDY>_<.Z] M6\?_ M?PYX$?9L\\8I\Z+'$[%T/MA1CJ@7=?7S]R(TT0\0Q-L5Y+B62TJ%<, M%)!,:*QX95C+,-[&-!L\6@>'1[-1Z3>VP,-R[.=WP$$+A9G>HJ]6K'0GZZ5% MB_@NPP*)23)],LG8%9&1W"E51')?>2YMEY -C9/"*QO%*X>G^&:E+]?7W>V( MXKG$Y*'%4G$(1#T\@<@H$MF>;!BHJZ!7FF.'#LN_X%^L"BRS-.G=B/"-5C3/>Z]NE(P%1#C KN,XL M37@PP995,9LA'N6)'X,(&ZTN6JJ$9?H96XFR@;F6#61[9BV>">>>N#0T3)N] M#6$R6M@P&/[U1F:LR9G(:"MYZLZ6X]KO;AJ&^OIAKJX3=A&;6.1L_UU$D<4F M6.'$AZ?W9P7,7>LT.6&%TEM'EXN.J3G9.J4M)9"U9/XY7$7UIWULA:KX]_ M3 ?&O^ 9W,=_X_(39*J*DC5+B_5H$2Y,5XT\N$( M#BO<=7DYEY&3&B^ "MCJM++\%!N^AAAY8:&/Y0!B;1$?V9 8GHK[SJ,*ZP9Q MKQMOWISU7I-8#^8ZF&,@AK:[.=8>(YPMV\UX*^N)D&:GTF]7>XV]"T[RDZ(M M:'";!N"-!KN@$MI5M9E7T2MQ#/5)+Z<*EEGQS6E,5?#K^?'K7K[?D?E5;N15]/(8#'NPHU2; M2T5FV P^S+!XFI3&- C]P2?R\TJ;X]+R_ M=V OXAL8I-: J37+FBW="/,[B&U$F1TNF3KP),PZ#&NS(S/K9:19Z9U4<)1:7L<;K[$ MV64C:7)2A;;7JW?55M;LXU:GWNN]GYV;.M&W46\W6[EE'ZMB4F)2=%+MT]80 M?M>_C"FBM>S9T^3),LL.9 V*JZ4N;UER=DJ:3KP?Y^ M:"4IO(CE?W.K0<;%9H HMRW*;:?CJ71]VK/S5*O2;RIY53<3]>LY(2W!4%L9 M*EWS]NP,I8"2$OPD^.G<^"E=S\7L_(1Y[;)@*.%+G:4OI:9K99^=K=IYUG,N M9IZ&>"RGQU(4]WTWRR1$J2+7.[B%-W4\FGY\01,$S!>R*!ST?Y8CI>&^7V/Q MBC8$X@O\S:\D;8,?,M::M9F'B(O#!8"R@H^RHDF9QK=.CZ1E+J4+9OH6G-1.F,&_N-89Z5]O;==9B$-Y0OXR-D3"R?'!*3P8@\24LSHP).=+CB9,_DF>( M")K3[9K<>K=:7 C7?2C\6!+GB^8!W=J #BM"AXI>

3S9Q (GQPEJBR)2VKHB CB#;*9M M3V7F *P;Y!WM7;O1E)6!7Z#%4C5!090M+N79OP;O=&/#4$?^/F=56-4;^%YI M4#3=FG9DC'0T6&3[Q^UM/$#?],RD.1-!+O.7JV5-+JP/I\#8&*]5F!QX+2(& M%>J8-=-3C90SAZXI(F@IQ0H1E*-TBE"Q4SYE>&O(ON78SDZJD<\F[UIZFVD!C85YN8$=@?-E>I2X_\6(MN'D('"*9>#!_>\4(@?CY8]JJ#3Z M1_H7ZE).O!];V#F:D6OG#W."F_".$B =VA-"2XZT@0;87LS1RP'SP"6-;^NW M*:OTQA0N!/O%3#SIZ+!DU17QM%._5\0+S/ 6,GZLA9?/\S43980G8]*8"&8- MIHM8?]@9 *BTM)5U]3S??%8N'"-@\RO4%X9Q$&S RC]FTO3_4U&]NZ@G/Q0U M-"O[/_WPYO3Y+_!OF,K)Z4_DWV"W&O4JP:](W,ZT ZV<']4Y"^=,!<,:-,*5 M*Q$.LSFT\+2,GD>MAKX#4DT\)G %%7\P;DMPY8.O/IB<2Y5G\$[^X?VI":OK M*8:)_H^GC=\=^>2L;M8/S!M! -1DR!7;0,V6^54)!K:2MCA8R>4%B TO5V2U M>J5T0/E,/P5(6A50E/%ZG^5SZ/3"Y"<(?&,$)BXT'/VA>=A_DT7 8<^_-3[K MKU48ML7DM[P%IJ .KA__Y:7?-/LU3'W;D[W2>*O.=8_8OBKZ//<^=SKE;?X*1=P8=[A'XBXKT?5'X=TXZMP82QT-=+V W);T"?P%_!84Q*Z=!Y#-_ M@2SE=I>*A*\^^T3_]%=TL@2T71:2&C&>/OU21X7ZLOVFJ" "+/5PQO),[%!9 MUTG=I,)H"!TS$0MR"91I!V56Y$S"I(I&LK_Y9W- M^!BMTSA=.3X38I#D2\AD@HP4)03NL,K=-1#O*C /.% M4@JT62GTFSE.T.4>5S<* Y0DW<+I-WYTZ.H[K\O+ NT,+K33\Q]IT>3O\C;W MX=_SBD,Y_+Y97,>J^ZZJ^]?'JOLMV7NR[>C7&:>];XGS&,:_7(8;S()LFN\G:X#'<+3_G6-3 LA*F-9HQQS=?Z88"XG M1?^+>?T;4'F%ZSX]?WGR8^&M8U5PBN4L7_D5\CXVZR_JZE_YY"<_*^ML\EO_ M?XK)^=M3)6" W<>Q2.(GXO[R*5;M:7+C#<"+&- M7X6.3@>Y7. _&UQ,*0-T-M%(VBGE*$_F$,]= 7I2&0!::>47?A/2(I"&?*$C M&YG\81YLF$.:G;QX-NO\'*VF_[R'Z+#?7'+@7#I;^36%J)M6<^B@E_(-;[) MQXV;./YFRB:,.SG''79BG+5,EQ(#-BBF 0QB60H#-X MFU &W8JT\!'%MC0":#>M.5I !P580LU:.;TH2GCAMR;("\X7#-8\=L"&!"., M<,X5X0Q,L#L(+RC9L^-EH@PD/B^QQ*'Y2_U5=3 @3&F=$]9*K.M@B,1Q1H1< M@?SL37 K2:LS6DJ&_/%L8I]3#FE+L$_>\Y4I-5.(+C]4)A%T-=L :_2%V 9- M6FK7C3>\Y>:D[8AH("Z%82C;-VV/3"C8*AZR!.%9M@B:^)FQ;_>L>EWV[:O* M@;$0_CT@Y/'!\B6V)'?>V_>6FD:9"17SR:\_\\L#(2[(H?7^<"*_^.SU+<1^0"R&5ANN\E>[:[H&8*JFM0;@![$_<2$5-"%_RA(8I""9.B<#$:]SF#57 _N7D2C])KP*XOA$(9OEG,+3%= MCKH6T)2%]E;.E\FTK&?OA&MHB":72(42ATUT1[22.$]39=KU-CXQP FAKQU2 M \(QXIE 0%N.2V@&!%K0T Q))FPJ5^H]_W1]RF0Z]@"&E$%6*'^$0LV_D4_. MB\OF,J/^YDRW"F;)\HL+<.0888XI&^2WD?;FX,)%0UJ@VCMV)P+<1&F M(K!#'01@S.@2,8W?M<1\(>M R5STN4WO>(P'0GN"UAC4_XY6&:P)+0[,\,1P($/,S?=?,BGW;Y_)?4DR8Q1EEVR09K^>_E=,@8\,3\X %] /& M.@2?N2>$7O]67X22CT#1C88:CQ0$OA:V\X[:L*PB3Y2<^B5VF"])K?<(#7)X<@TE9&$#>))\Q0%$_EL*\=JT##M/+&NZ=XU2*4'O@0 MZ)J/L!A4WC28>"1(.0_A^ -$L^O?C?I*L,KZH+FT%9\7 2N,"R_,?I]3R@E+.#P@!PV6 MS/9N_LH.$T4&3LF6Y8Q$!2@)4!9 P397H?)EEBLL(A&3%(X0 MH7MKBL0H>#A%NS0;W:84J%'Z?N1ILL-?8(>Y6JP;A/H5TB'%ARSUH ))?M\B MO,5!JC%5;@QP,VYPT;[7+.0N_.'L?2"ML7#2 K@L.)\#U0OO0,U$24.5A\8H MX;98U %!=I12HPU B)*64FXC2>STGFXL&=9%1;&@=$(D6M%!,0T4R80.8B5B M)JR'#?+M]G/XB$CY_LG?[P\BY5Y2'=VQ&1KG0!)CT$'CR-R)JT8QXQ; Z#+_ M%^ICUPLZ1OAH"><('#R9GB!1%6Q%?]+O/GE/K M?BRTQOLA*-26I9!T;#@DM>W\JN5"%F9%KT0I%Y:>K"\)'[<(88Q7"SC'/U ) M[YO!=0V#O[]T$ZL/@-]%L"!B"KM;6K^HYB=TK7B_>KL'-%4R J5]S&P,[ MI:/GRMQAEIOJ/)\AM\I;U"^AND<23@Z'%O.;S!0]'YDDBR\#QA&(*=@^S]TT M[QQ7R"0?9V<7DS)B8NP+2!Y>DRB&P^ TJ)1 M?Y-DDR5T2'L2T)58@A\P-RWM)#1K<[#4O+U AA5(;>==CRJS+-]I$<,0AP!4 M=8J*S,+;)!W%:9^D?[UR8U'&N7#9E5B",7AA]:,RIO N27)L09F1Z*J(=.TK MY[K"T4RYKP-HQPNX<5UQ\<00^N$KGGL*:#\A3N!\4V M9/H=,+=HBG"^',VAM$+5$>?-#29R*""-L^KGYZ(F@2"@UB$<*JZDH.XPG-U2 M,'8$P8C(7(SHGGK@*G(DL 9\5ZRVD2 N%,2*%@W[-MQ&O/ N"UQ/]F8621-6 M',,L=JGJL3QOA:!2V!:,&$:Z:/%!#-F65 %59M+38JXL'B3B<)&P#%AP8B%UWB% M<74>.^QB>*8"Y882,79& 06-< M9-)*X-VMJ'^$ "[!J"MA]3R!1; '&'TYVE^%04FCR1E:]!PME??.:^R:]TNF MY3H>ELN]FP205BL;.EQ2: .DI=Z/PAR1.NV61\S\QVL2 ELX:(R!GP#A,8.# MORP6WJVF)@0>">+==N]S$+7(E'G)<1<6TL, TH@9G4[EN>BA?_$#5O[YOQX_ M>?(=@VS4D]@$A)*@+5F,NSX)T-"R6(-/RAU:9T__S\G?'SW\9L+R:!K@ "'D MVN]%,/"DM*;D-7AQ+#O45Y7?]0XXO467+=%CRP*+-R=IU@A9/E=C<1;QDX>W MW2H(.1@'$TS ] M-#@ =5PCZMR*'K2GKQH*25HH"T(^Q@A>[]-#"9X$X,0@' M;9R>EVKB:*$%+H7PW;X*+0QX"M:T9).%74"$ =C%-A!;(E51#9 YZH;XGNE%N++)&0G\"Y:^3]J050 MK),L,@" 753<@MDB?2L29^':)#];7$JCN!B4A@GM!YV!408 U\L?/;1W8 L+ M_QA/WRANUS_Z[!W1DQQ/Z+T>&;H,?Z\;1M<;@+Q.-M)M-VBE<8)\Q#*C?DM: M*-JNG1HXA,'A0@%J0B;H@=X![Q 7= ;C>8\P/W*963R 2NKR(*$'&:"3"]=H M+LC952D=AXV ^K8\YTB20.MI4,?HO;%!@(NID^- M,*V\,0(5F]TZJ.]+@PS?Q1UQ5M+E0!&\F%^A<<\^-6E=L+6K8;5+X/VQ2Y&6D#G=L#NR@K4RUS"?@ M9V!YB-9 0XE%N\#DG>DL;[=M^R1F["*+I3WV-1LLBK?\4X?U!WG#TG4:XWH? MR!]F4PG0^LKABR-58/5@,GGI/2@J>]JGC)32!;6!SEGEDE$#*O6FQA)275%( MN/1;C5:GL/F$/@HE,QGO7\U+K)K#IL+*01,T)DRW MM.&\]^$K/D8A.! C83KV%&$'XFD/Y9)^%9C(D\#@>K+PVW;S[[SR^&J'NG06 M9TNSQ.0;D-X()'9DM5F^ "'M\&=8/B_JG*AU,55>:-^M^:9D=/TY[8/[HFL* M3%F(6$[/_'DVJ/;>* 80Q'HCSTJ01=O"!QW64OL+3XT2*+9'-^C!:0NPH#MQ M8]JN\HB)>WY +,GB\WZ0< M-7,C%3Y^L[I)!H2Y#&ACZ8&,RZ;1%80HSZ(A20LF44KNGVDQ+=R;G+F9XPI- M5\-\2+;KM.R6*-]C1'JT!1I7H+2OH.$KL 4IE$D92-1NLX@9%]&VBCU<^I5M ME.OL!?QLN+SLENRS(S0/IU9%'R%/6-#40//-ZS+!QB5PLZ8D- M(I40B/N1.0LVEE1=@I6]WO*+CZLT$B&DD1LR4X:<)FN_MS+LV'61E@->/46, M=-1');SR_CT75 P-ZV,3D%]4DPY$I&%I,!5IBQ16O#;IN,K8T^.0B-^/* KA MWZR2@:C)OL67C #4O,OS"W_*+:$D6+9A@!.5$ M3\+&D/Q4N2Q4C9R[507M=_8L,5HZ5NEP@=$;'H$))]:6E3]F-2+140N:L.4/ M63E8,;U?_L>>WFK242"9P@H+QQ+781,H=EQREIA*#(M%"Y53LB9=_AXM6%'1 M>J:Y%I@53 SGKXWZV>?DVOG%SA+&&=N1R$3(<<)$!##Z[B>ZE4*_VW M16LGQ4K100X9-K-9#;VRQ*9%%/#3:6R#>FJ4 M+7:H+^3F ZK#_2Z]3?LNIH8.US%+4-D.T,V8NB _'E&9I5D-R6/"-1<0%)"R MG)#A0*SFARRSX01YNQ'1!03^=<7& 89X$_-)'.92O8D>DEEY&-%_K-4G[/'C M%V2G,\[L@YS#!<8:9,XL(<:<:PK27R60,DQMS('Z:+3A99]%[W\JR?SLN_S9#C/+18'-LL-+$Q1U[KS["Y"53<815J!E)_D'_CNS M4>[S')A1,JPA!:U^L/T$ZC/L8D1L%IYR5;1JQ /UF-](X%L\^OMW,-M53Z@^ M?*1B%7/MC!T&(=:?.B%$H(YSV/=XE-3&=$Q]<&7AZRBJ'B @S+"O?@0D-'3( M/\Y4#A,>%[T/,OWWG:) X'64T$0H;#3_L.4Q;(JC0N%YG*RQ3R-_D+[7=4^D MY9G!,&V[ :6U]QJN41N<.#)0ZVWFF:0E(;^Y\F82_0I($0;D*(VV3'J8A:)" M415)6"36>T#N-+K@$(M1DXS?Z-K&<+>&W^P.CHXEK.^?_..S*6%]JB%[H[;8 MX!%H';.W*.[)NH04!S0_\99M6K^8V\R4*YA!&;=K M1-O/UU+^V:$\Y>#1%.H94DCS>M8'G"(4V_<\(A'YGQ,;E,1)7S[\4N*+\[R9 MYMX*G;QZ7[K-Y!1A)R'F-.\.=A"R'&!\[L)+XIW[JIHR>ND MTX=Q^MY$H?03W2^7T%_8] ?>O^0 DL;N%#H,&5:2%@4H' ]V;B<:-?)U>6! M)P>=E@6@12=;[Y7Q>P9^"U!;:KE!39O.@5X.H_ "=*K;:&;![R_FA!'L8&;) M_K*-9IJM?W-XY6 Y)0^"-@DNS1^A4^'1PY.?,3&13#6"[>1 3A8-#X< WX(PQ+QD]XY8(_43?:D1).\GW.ZDS)@Y/4@%&7;V>- M#_DI1D(B8GIZ-0,24L6)7#")Y'5I&CKTR&E]A%L]"#PR$FPW25!@)?I M4K>;0+5GVXW@>*Z#KA&7Q74>2YR H:L26V,KLSAP7^,Q(UAH;@GY!H$G#94 M24=&69/]]RN3NS^D Z<+ZD>!@MBH1U@?&L81@7!!2>(>C]2U< 9^:QD+MM\1 M1-SPU&>FQ:K<,$8.]D51]1'K>5Q)VE9+SE@2C#T):5\#'>$RK0I&">)9WBXS M_%\LV/JX.[0##$A-,;32PTCWOQ]W%EJN"$)O[^9]J HR1S(N6*[U*P<3!U@U MY':%T8'#LQC>(V^)/Z;R*V'RZ/'$;\UN:0S(MA6YB,8#'H;N"C7RU9K!.T:, M'"^$=QU>+!%20-9IQ43&ZB(F[F%96LQ:6U!CC!I\+VD/PTZ.5T)7/M*IUJWG7:2V\G+S/$J*.4\].VT ?8K+TC= M,#&IEQ\_49"QN734><$4Q @#_;!=,XBVQUV>Z;3( AWE);MK!I6;=(P>(+L' M"$.#HRQC?.A#"&O\IY>O@WK1YE#I( 7-4A!\T>]ML,7DDSG(P\QLI]@"VYG M123E 0*9J,\>S*MT+Q('=MLO*)F)#NC*N2[Y>+#&F> TX9O!ZS=M8X9A/K8W MK2!PFJZ*)&B%$@!L*UL],$WX#&/ZGPGS$?5YI<8OY?9 _0SB )<$(75B>H\[ M+\#Y"\:>3C/$3\AA/&SQC$EBA0HL6%XMW<1]UR,DB.A=8Y284&BDS&.?D[LT MAH>9+6L4_!N9$EF+U),@AEX900@%8,?B#_!Y MNCE(BQ;5G<5]E;9H8XB,1VFF4_^G*_6W_D[/\ 48(M?SA$5]T5TW8 LF;MI M)[XGOA"3UQLO2[23S'ZQ=AK/"Q[F<*$(:0V,_X*+'\0(27B!T?.R+K'%B^H@ M,,\.P,EE3U(UD36@C!QSH+ U!V) MJ%74@):B[\XYY;N* MH\'?QL40T'Z:[30XW2!CZ)J5.89%8(D%NNA4 C&*4LA%-..57ITNB>!P_@C! MO[KH4\*0CF,Y6^+.E]#0VZ06WAR.,8YRBJ/L,X)BWTVY?(V3D8&Q[6 :P<\B$K'0LH"R(6A9 MV4EB.VJ6,#=34',]@OR;!H)K!JT(+11[E0PX;?Q)4$'@N+1M'D3A@,-_T1 6 M=48-A(+4&R[XDGA_=$>FPK#R6J M>$#OV1+;Z1>^-L[6\$TSLVRT\QY- A7>1!D'RRS<8QPK@D(_C5"><*\#&(>* MI&X8T9-C.PN4%=JM@VX?1;C39B7$+8P9'CX,F4/0J@KL*XT\$7.)"$$0%1AC MIN&0'1R3K/F/:!9\S@5.F:QV49*XFQ1UE_KEE;P2OTL41K8DI&Q0/G#:P2R(FC=X[BE*\J M-#2022'N!*4OX-Y6?Y'P>-+/-W(I?G3,QE+N%VR9ZJ]*4,6..[OF1XC-CN7W MY$[6/HB^<*GY,[Y$%/1@VQ?!V8?V.%%2790^\.30 #A"-3??32JU3?[,C-EG=F:D (8X:VW;XZ0C M*T8R1'0>9D&.+40;QDD'S(#D(+3Z,M@2?@N/0DD:3)YO]&S;ZO@!ZGY0EAK#DWQXY]6_U MV<8Y]<%X9!-F_VX":922 ^=,EAXM3.IEQ49FFP)535'R9-NQV?_N.,UW,,VN MNLB)ATM']W/8TS9(#PAL^18^.C^WXU1"2N2*$,"X?R7@W=-H;/W3N'57Z*7!W&M )5@V/$WD7$XDS)NZBT7P_ M"MS=D:>GV"ITYO.905/E"X"& 34[RI@=)^@.)B@4:(']J@B".K,<\:[,P-Z; MIM- 2OPY)5S>#M,0B&/@1L]6J+^0T0AXA;5,MPW'8#,TE"D,R(L$3O%J._51 M^DTJ/UN6+^C[R!NME8^4A3BSAHDD;/SJ69/[*@<6ZFSDHI#=*5VX*K7==+W0 M#L/J&@(NHK'S/3,2>2 *"%H5T1MI#$/ 9'+D!)7GA."FII&^PVE32J&1FR*KW M<3F_'_SK>$=R/*U!2C%HUV&@102+C+# _O&ZPN3'6_V*F MOAA%0RS6!.\B\V3";-L!(AMB +(*\.U:I!?CF4F,?J0BX__V:M;54[^+'S]\ M])#P@:(&,UKP;I/L$T@*7-:$;#4K\OO'G M75=>20OOV W%[!GI%L9]]^TQA+B3G%?;]M%F','L6N0) G-=A+RV*-YC('B' MF4MCR"AU*0!8=P6D31?AR;$'I(C/@9?HW,;(BN1B-1-DI&LG> : ]M'H* 3D;O08H!*D%$, M$(&2,)#7EB%U]VD+^0=?%FO.>!I9WK_1\R/G('7\2!,"MN,'YFQI>!+V[$R( MP1-G'K<0,05"?V%,^8-Q4X4-K@+O(10-A#U-H:)=05A7"%M [.$>I M+D:OXR6Q=0C(Z^V%"/:>7\ADZN0&00E53!FFS:+6!?DJ]F5=#&&#PR=#-O)4UQLA@FR:DMUO&88O4HJY&I,G$A8@2 MVIRL"="N&&)M&(0M'8S,'Y#3YRPH2+#!QLEB1S>;VIL: .F1C&]@.,9NH:IE MI'&@78I6>2:C*2M;VWI44EA"5\,)8FV&]H^E+39 _#>YJ.LYIE-$HS5?P6/\ MB]FGO6MY4:!B(B,.<=[A\W$S'"$.<;:$;0DY=EA9C4AVDOT@)*+VRZ1.0A8- MLCO\,$2I+_)AAN$^U*62)\V$^Q_$#E3QI%@).=.5#W0FF9M4:U"K:"0")@;Q6P9@1L[G"OV<+0Y&;(X![T@MWBL83A%8@FIA-K) MCT]/P\A_V!CBA"5J8'ZF'1.B>&\=O:0LPI@8K2G<\AUV :"GLZKY Z@)"K^D M@_'DG7-K.0O\XS'U+#8.DRJ2Z73TSO$)FPJ6(U1H.C84^7:;B6;B- MDNFPA1:6MC-#@CXK^P0TF,VE\W./V?RV\V&+2P7@X4$HN848E1'*OTL!A6."G9KD7;:E$' M<+F-^/2-.Q3MHDFXN\:H?3,Z9,MNT]>9K5B>#BS_KH33B7\^_OE^, MENOBV:_"1^&7?]A_0I)#6]"J[ UE'^$5 WM]0O. ?W27A;O"JH\84;0FO$'# M C6*8@L2M:-5V2%^,+\*KUHB]IU>[E2BHJ(0[5-HXO>&L-0= M#NVH0(D=2R6;Q33YW0]S.Z>6# GO%3Y@FS,N74?!\$::^M<8:4R(A!Z=LF!5 M>A]Z07D_<31EOHT.7Z/,<$7$O9:,L1;S%V!0_">=8>XLD""6IB#2!P"W=>T8 MH<1/CJO5.-B#AR[87LT2+;@9<-M$QH<\52!:1VD[A'GXS2,,BW-G=FF&^PP8 M8UBP,%@GLZ\^9DGNDU7>;N014=8E\HH:#=!H_"^@)Q8U(L&#;"UC?U^]J^JK M*J27J, 7U,9%%3,VKK!:HCP2BL,A[,1/!,PEWI(2-^;"F$5@WB+07N?&NBUB MZ=PYAG2-&KL%^2=J#L>& W;B6/=4K))MKT+PFC$*)IV'K:ZJ M3>714J>?9@PF@9>;-_E5'@K6/":BVZFLATVB$1@]TCUT*]/^O=T#J=0S]A0Q MMG^KBWYC$^47QF??TG8 5>IJ B3?'=!LE?X()*'Z?'*5-Q769>AWD/2A[%D> M%!QEB_A3_;.'CM]MCZ$#(2;4,JUFO$')9,Z*2T:R-2A:7 ;E3<[0T>>\G^XZ MP("RI"J8VJ(CP Q9]XNZN5"9&Y(FX]8!HI$ZSO!MSC">)'-[ HT%L<.A^2_1,5FV?@L;\FJJ&&[6)+XL;HK0"4M#6*R]Y5[BL-)SFX M1P)H,JWFLWS32.EG"J4=XX W J) M:^:!*E>3)#HY$ST@P)$XN&EG# MSSBKFX8+I&8^C[-WZSL76GWA^)J[&<8IZ+&26JT4,E$=7'M!,B+VFY).&9(' MS:5RR9F+9=CYPOJW?2:/P)3OOWQ\?X IQVWVX4Y*Z,'"0J-P._OK@&;EI",[ M"3H^*TZOQHDEPP6;9+(Y88V[-[[XMPV;M$3%S@GL2'WQ"E5F]S#&G8C M34C;\WR3+[CN%Q+L+4DV=O5?CS-YJS/)-)\4F4OE3FUQ MLFXUL@=!!1)^94EPI42V#,A4J( 9M0G*1A.7AF\XR5,>I^^36DVQF5$I,:HS MMN;C\^ASQZGZ)%.U!M^%S",DQYJ.O'_ZR=@]_^OCA-SZA%P$,!5"[/P1]#$[ M0#\E)L>\"M%X2$,#P!+*T@&1I>;.L797YE?:[FRQHX3AC9!+B*IE)"6K"2%4 M!+CQ6V=$%%0*H'(75$ C 4LL5@.F%PF7J:++&F+_@5S(1YU6B3%#Y-B#^!-; V3!7I^[P$K 1#,):RTZD(N;P!OC6(551W1 M3S>5=T6=?S M#" 5" 5J1,C#7\GLGO"D0;_ 0+RY^EZ"8JT4HH!BS$>D!8I.P*+':Z-V%\0R M7#1Q!7<3YO%Z+ M%0#04?J9L!Q4]E9%$U23*9DI=;CH81!2$*MGB?RZ* M+O_HY+1WS73]G#;6%$XO^KM*"R,+@NT8U6*< M6KJT\R$AD=_..1_Z$W;J)1SDG%U+8V.&W#^0GR6_PD? 7F!;,AU* \A)P%1 M60'=6V4] VPE8L\R2>IFBNB2'@8$^[.5A!GE"*:1VXT<]@J: O"1@9 MD%C9Y)__/.=$;YKV50H-GXTWI>L- U MUYEZ[S8AQO-4C7VY28#Z1C4#,?O,&F"E8G /!,<%P3)Q_GOA$*.;E_QTD''W M2YB$/PP6ET\K\*E;=&D&,X:D-&!L$\!@LKT"1B39D\,9TCV::5]4@._2(2Q) M_5._-T]^+F;OH/<0S7_?N?@C5%;_T;^IFYR1&L"I0(_D,V?XF9=26'^M6_U% M?L6'K_]-?0$+T:(?WR(]$KX%GNG^\?VAQ6>290@V_5IVGNC5;:.>J )I[QQ" MOZW8EF%74?YUZ6IJ7#X'%0J>>42SX+ M?,W:?9B1>AQT1W)P@]MJ *;"1_-;$AI\R()AG."DCX=1-FWJF8NOPN>;W>4@ M,5;WI)LU1:!FA-NYYL(33M_2[@N^6>)'DAP4PI19Q6S4%S&8E'"6TAY#.S*" M79GGJQR]6 :L^%#=>X!UI<1<"-(E)B=AP8J;S'@N[-G*+VT[N*2J"X9HC*3( M1";2'37D+DIZM_!$_WZ167=JS]%;_[TJ4&P,?TH)2Y=MR^M\8A6=8;]"P^W-H*ND$K]"YX1_%@NNXO13<'R@+WU*?0YF M%C(S!1+U1;%0 2Q2^*/*["9^+K:?/YBW]\RMJCKPZYX/.F>!$ MS,/*\]&QGRMSB76*:"0H<%0=>31C(IG*9P5T&2F3+QY O8:<\)2./I+S6BI( MZ!F(^(A(C^=8+TNYH:Y8\2!O65]C<;7M%V;'Q\R:2-K$?+>6;U&<&.I MPQ=(K%MJ&1'72_>7_!4?0!\-B,C"RT5O%;R>ZK)HZ&#"XQCVT@GOL51(>^#, MIA8S*.OHLI!L6A2;9Z'/#/$N>6OT*DF=/ A6MER5B'N7]7NTV%<8%[ C,;JO M>-QVGY<7WF7LEB%:I88\M2D+!&$"K=!#RFYX<.]4<=L:?2.- MT**LKX(?R.]QA/WL@/T\N3^PGP/Q#6Z:),WB+*DU(&(\HN/]!OG22VS3M1Y" M4-QEDTZ[UF:RH%5).EU,Q#[F%Z:';B2/ME8X$]\EH>\&9(W7"UK:/1E]E7L>XW$D?V:ZYGLD^LL M]\WSWC.0.4N:'9-VVMG2K1!K9GU%S4=PTW5,W+&-R?8>C>%."W5NLC7!'X@3 MK=R[&X6 %U"II&Y&OQ3!JWP#EJ%K.!7W[#(O^USSVJ?4\A64L\]X*MK)%]S? M_.;9Z=D_0XLS_G/"D&VA&=:.;/ERU,!8T':C>C_^&S34^.DIX>2?T#7L'#IZ M1.8*H-;=P*MC*+26O;^-F&,)'"*'\%?,4N$C$T.NI$(Y'Y2T"D/&N@O:B] 7 MW2@ :$ZQ%#UJJA"G4S0E$C*ZP!\@\LLTY);S(!Z*& 6W[[2:_%7U=1!XMR_ MG1^N:G[BHQD*(9IHLET\V7DTV<(HU8\O&P F.__$,MS"1MX#1U MK_'%-E8$"RMU1QHON O#*F,[)HKYN:9_]CR$8'],BSK.$T05+UO 5:(Z&WX; M!OT(/J".7SQE$?D-UE5 I7E/((&$V9/99E9*AIQF*6&2Z==DDS&K&YPF?,H- M$2U@JO\P9_.Z9-[_["M*3M#&Q0S%>;^&8O[DS"_CCBCIX SQ*[= QP*828A5 MD" 6D @@(@>$"5(//.=1UHDH^VF K:%0OB"M"0CY M85/Z";T0>CY_?.+,R%<9!S!W(%B)I&'R0%@3]2\6C!@7"J B";9BRD6DG*M! M#C4M5M/BHJ_[]H'<[2V)?5#D@#E-M@=V708G?5E?^1/PBJJ:,%)R$)OEB \Z M]I2"J+*KVMM\_Y#3#55AM29[]O+:;P)T)ES:1@B&9@!^]R:?SG6Z8HR3S:8O4#"T*K]@!,%M;+=83HGE'QQP?%^#W6&8GV"+H/"AIJ[E/P+U)X<'N8$H%O_0O]XQS MJ\+:(VRU\6L*EU]EH=";:)A8)CI8%SBT9-D4 MLMGA(L5>TMIO^4;X?8C;!RO2AE4)W26AIS4ZT7MS]8&WOYNNC^.= ;)OE+I/ M/5IA7A.OP!S_)A44#ZX_3['HY=COIOHPFQ*L29G,5)+4:0>^(Q6C&V!N!4Y+ MN NY^J,C=DI'QN)51>LX3*05K:??ALI%B\*IDS6 6/=G2'%G6)+O:V<0XW2;S]B MX@8GEHN]- 4\ YW$I+N&UT>C(P @JW#"0D"D0\2B0 I@0KN9(_$,L>=F(;8Q M7-OJ+\TI5^HM&)JJ>4;N4%TZ2:+F32?/A.G0^,$,*I:-(WOR\F1*K"[GW\AX M(N0(@GVR[-QG$H3@.X7\CLP%'%'YFGKQ+OQ!,_634P/[+J4HK#34K&AF_8I@ M2/ZF3VG.0\V2X('(VH965A;!EL?.[#./K1),0/V.9EK!"J'4"H<3/2P<'*OK M!YDKDQ-Z(0+/!C32H9P+&_N*F]^>2QO[CED<'"O7$Y!.1\:XCC:C3\\ MC/TI]$=/T$?)E-/6 .<5R0)#=J,,UB36MANU(6HU*!J:$H-7_* M^+"E8/!C[)'MN">JG'#B'0_3!@\GAN.PF09B7A]^KM9ZOM L6X//'\@L##,( MB.8BW+"XUB\1V<.;GSR1: N;=G(1X%'[-J+YT8/.ASRYG_>\M3>#22R:, [: M5C=W$'?[M8F W6UC:9V&&YP4@.7+N<)P0ZO,2*&\;N?EQ.8%PVUE&Z7B#2 M--],QUM _$244II(4B7<:I5?Y537$5?-/LWXS7&:YS4M#Y@1>!7OOS$-9EB/ M,&IGI/L0!%*,0&6 @8!2E@6IAT]%0_@WNS9YX_L%"!@^_T8"&X>G*EKK- 9G MY88C.P'H_UQXR9NZ+!F.3\Z4<;4VY%G1DYA=>Z (Z)WGUHN0O^2 HW(0;Z"I MT*:Z&YB9Q#9&T17^=>[()2.'#".7@EGO6W^J:'_&B"57EU8,$L>\^04 *_W1 M11TKJ'E-*V.%YQ8'2 @?C):'P%&XHPB_?A]GCT!+LZ5-0Z=RTA;4%%2W(HDM MQ@I1F_6#R-O';CM OG%QE.J:$JEQ>3 ,&JTRG;H,Q,4=^?>&VL* MEU-'G7>&*FU>BZ>QYF]N4#4E9QXSNZD8S4)7TKK,VS\19_%^LS M>Z6W]G5CKL_9'.3X7QMG2&&,PH)6TCV2'[8=/-,H%1/EOS3N,.[Y#1S*H$#- M,?_UOL]H^WDH1YJ&3I$/QQYRJ"M/L*3A+JADZ-P[D],QS[WU#D6E) ,A?$B[ M-0RP*-ZUL)?Q&G504STH+4=K7RW:)C.](=K=UV+I\^YH4?QQU>)IE6%?S6+R M$L#[?_ZO1U\__.[)HPR !E\=Y"BCXSSF':)#\;Y8D35[E'W]U4-J[W1I.I4T M++9F4GNNG*OP30EE%"V$QP^__ ILV5W."<79^/SB/IFTB.FK^W0+%8XNVD58 M Z:GFE\W'TI"0-"6]/1Q0%1"BE!JM7-J L8 WOFOS9.T /5F]VMBP+(55 M+#45+TQQ*#7N]J#E]]J6^/#V%1PNYU:VD'(?_9WGEFF:PCQU:(;%/0Y7#5R M4#\<'Z+R+:UW$3Y&**A[+VF3"CE-T._YHP=B"+XR=['"RJ8,3-S*0ED0R%%J M&]W5DFHM)DN4;#5,(H!X&;6L:D3,3TL*%"9=)&FT!Y/G(WN6?X9[:"0V2L[' M87XH)6J<3(5$JK8!%!C^19DW+,OIX)9,H:-QI5^XQ)W 2"L(YY-\&75L4&,( M0(9H;WAK0/^2V/\:6S!X]I"@L6'KT$*]9LD7Y5SIWWA]%D_GXX2-_QDT1#-1%V+%$'"U^ 'Z;=M/ZZZ3\ M*KFVP8)MYD=9%$W;27%;\(7T?29@&'R2!CCYK(6F\J,9L@?4Q>+AA*4R,:-#P(O2\T 8AA7C!A!F%?&@$(U)NHTS\T^$*IXHJWZ0 MAP3(U7O\"&0"<7 MU@B$#%+'598?/P@L*6FD!.W+^+'Z*CR5K&"Q'NF2&(Z(,2]T0JE,'M>[548Z2N@9K7-XK$SV,6#A.5ZV M?@]T[5@P19+0DWY+QKB*0)]E5N'YKH/ ]2 CJ;W/PV31L1B_JQC_U;$8OV^> M(9! 6F8#8P,H48T["L P#EL'_"$)9FX.G7QLZ^)#_$=EPO(N4M%Q#P3LB;@K M(F^I3!1*'G0K/%Q1&F?&G!R8;,;JA_"+(:&/G"G1N4=1%GP&^N%$M3UJ6N O M8%F;W\"V%W@#-P,M8G]G($R[&B6,,L?GKD"0U9;%4L5^ S5QLU668-KV?<&4"MK_1>[X8/)3 ?=3.-3< =0'64:II#Z"0A@I M-16&IV/+"'T[^:+XJVDVTT?TOV/2\L0C,]XO]]EJ(=CELV4ZW'$ZXHOBQG=# M&.389 7^D_ 4.$?^XO[J:=GMVN0Z!I>$0Q'7*J#2$L]_%!&!2 #".- YL-[$ MY94$&08QNRS69:W/;11NPU K]XQ4 <8?6RWF1^7VXQM&@1%'^ MSG'7CS13;GN*ZT8XHY'RSP&RP; CY-XCZ6R5,T7ZQ\"T=P.,C+=4A"S-QU,[ M<50U=%6D>9^'5E%P#=+XT%R&_3PI9L0_%N!UJ:V(*,QU MT%"5MV\%:Q4]PV@D%LJ^H>Z +#8!=84@">:BE=6WS_[(MO@YW 3J#14*FS.( M QPCH/J,=@VC#K;CO] 8QN4=W.5[P,(L$@S=>2"7Y8OB=T0T#A1,U.Q4\XET#TOXZ9Q^CB"+,%D2!$/%BYV*F9PTE019(U5V@41I610-@D)3N59N*Z!*PNY?J-4^" M,+W0A!#V<_(*3D.'F8)!UP5D*+$-R1^;/J+MG,6^@D,*X UX[I/IY@0!W=.< M\N+M$'%/+V13F?!;3&4@83MUW^UZQ+?+0B"&'8,%S31%!Z$D2WEL]8KF2/C1 M[ZBE)!,%)XJ?'I[ "1YU'(N*_D*^")O;;B#TP34S1O:GYD[U?YKD>/J=RY2)C%1;BHRQ(3\1S_V8L.S.Y"1UJOJ0M2KRQ$_3!OVM\\WC ?X'9I M)::)07Y2D2'S)-E2XN1=2^X-:WN.]47"ZVL%!UO!98#X]8U/0T%7])@TIOPW M%"Z%WE0;XYJ+QX,U\.ENVAE&:P&UJW7@>5WSDHY.3I9L2(XB/"0&S?_#\_IZ MD W>VW )S@OL'%[*_/4WBY2@BP=+/B:%(6'LT*\?DK])WVY\S._.:)C3':D] MPU^(# 3MFE'YP .!S\5D#CP$1K:&(LJR\Y%'""U(:<-1DH0TYS36N;-'(, MG02C3K(5Q"1>0*"1Q&=FQC/7.)@^1.H.1O-K0?CL)M!JE ]LQ-'S$\GROR4R M@D-R0%V+/[V'@(!7O7U7Q4)R6\FU@$CNI1')A)M/L:V(WJ298)%6^R@BH]M" M^G.VI"-\8T):):54S69=D+CGL0XAEHUAC-AWLT?,/BX3(*^'MZ'(VU6:NO47 MT):'J=-?XT%J]Y'159J6]>S=-7A43C;PG!!HY0J_#5$KE@P;Y>5*G?9PHL%= MT8E"]X,[I\=N;Q#C@!3/1J#B-]DV(R>Z8=L;TIX-/QQDCZ+RH#K.Z'G10J1^ M<*2=LJ%$JP,BPX0[0 2.Y$R"Z7$V3*.$G7!DC5CBG<8'=A8[6QL_+*TP8R+ MRW3H1,)$;89H9JZ#=EFT8]+? M>H.<-IFT*C.&#LJD;=)?67HJ M)2#;Y>.8,L4H+B;T@ (ZAMBYZQF7:ZJM,0VA11<[(S.C3>Z+4 Q M+#=^G:&8 '%@T-IC1.RYWS46UOV,5M]C>EKQ@#="'&O16^!/IEFLV6)RF[=Y2)C IZS19KOX;Q%FC52:U\DG#WT$FE_>L$_RF M^4>.X3!Q!D6GOD@8H9H]V%(L.&GJ&,:/PD1)#0 !D"9'>*"CNM.8G0T(S:ZG M[[E) 9*,$"]>Q<4^F+RM=7?$?# J"#ND@PF+.(5L!LR-9?#"A,,V]JYIK& " MG\TBY0AR9'49D 2(+H*16E#*/H5LI?:*(5&086(&8.A,P5',74"L[AC3%*#$ MC>Y26>=$, *D;2L@YR/X4S+@\RR8S\'LIF#'HE(LOND"8R\_CUP6@ZM20(#V M! .35+6'.#P:XS2LFH>W4V92$6-F M-8L?3!^II0,,O;;*TB@E#T/)>>(=6_DXBUG,?L(.? *+Z@B&WE-5F];>Q$H. M3)1/P9R9]P"=TTZ!%H2BH12G,MF\^%F,,O3+E: _[K]1U9>N!)1(/46J?A$ MK^KJ)( ^DF>M1EZ._%=M,4J?V5#4P3E'<)&JHL6"Y3-AH#$8%AX2^#-V(ZC[ M:FGOU)V.3\+7 7WT5C@3&9^F+::_GK]^^TJ:3 D(B"V@?HL RM(U*-V5 MYC&W#F!?\BG6;8LDQ/"O?-J"M#DH<$@ZG@G(#7'U^=1,4HG7>:").6 M:9D#YM^*B+T&,X;6@S$@1,I'E6WIG90&N$#W9TJ%H^9>;HE@Y-SL&6J/J"41 M2VC$Y)F'CSRVB3)3EX1'R*$9#PX!F -^ ] M(?&Y=BP.+[H;$A(+ H:&O_OG14B3)Q"5B1^&/;[0!YJ-YM2'ATJ:J+B6,=WF MH+UYZ6.DH+1?FJ0U2A[F,\-IB!P2Y"AH5V907Q!+4H#Y\^:E%,&$ A=?,8!/ M(A%!>\^GYMUJ;MJ.T6F7KD7WSK\7,FAR45<>H*N)6?""U3>++EZVMO-W7":3 M))Y%_P$/-+\ Z]D[WB'7=>W&; 6J38,4(G8260&$1X\8\4S^ 3O'XEK%5A5B M9 (JM.XD^0Q\Y;:'0P'EN ,,2VB$:\K4,E6+U"LJ&C?!4\F3&ZU4*D;ZY\8)4]Y;RPVP^/YHP2\."5N M ,[##<$W[:%_1%/L0%/\_8BF^%BIE:3-ZZ8Y%&D) 3A=1^I*Y?PPH:G7HDRN M:2^QW9-:,4]Z3JY+4:;=)]?WF;PDSO48+2+]$FZ^M6-B'.B&UB H^ K8L:9^7O!BMK/LICB!XD#H$-@$QSQ,W@-LFM*5RQ M#F<,Q+'IB:0Q?POGO&&XNE'7 7%?I4T'_BAF5X%;INBL@)H.^&5!2PJ;RPA\ M 55Y.I%'TVE#P&S@$MVK%.C'01'R)85$>HXGMD$89O1M1Y?-/FS(733NV*S3 M==Q<0W(XA,V-P4F'W4BZITE^SN]40"&%_'L5^;UP54#XSIV2*,0?QK[BKBY= MFF.E/""D9=&YAZJ+ SNBKKS#]/DU]6R3H.:QLGZ&%E&0>T/,PXAI1IY$ICY0 3/1)RI@S$TM"XTXS;[%$37\0"4H>\"DE+ M7SKHT0P?Y*[9TW2=F5!(TH^03^ZMZA./O*I89DBYX^9TW%0RUK3FA;5+TB.8I88QJZL; MN5/!%JXCBG+5(,I2F8EWU?]O[TN;VT:2M/\*PAN[8T=0LJC#1_<[':&6Y6Y- MNVV/9>_L^VD#)$ 18Q#@X)#,^?6;9U46 .IPVY+LYD9LC%LD@3JRLO)X\LGR M8@O+_A4D>]DZ1\KXOZ:I&@R9.L_2YVY6V]&OY47*A"C!ODH6K].+D\;-,6*M MMJ@$3DS=:;"L1I+R;:'_86R^X!V4VO0-##EX'TB]IKYZ$K=F#4;A+)=2HMCPI+(0- A*7O+?+2OX/ODDJ4I7DV7/E3'=^7->M)<]QC4Z( M],\-CSB9ZRQ,Z\@DNGN2D&E@P9?ELJ!03=%X1V#6.QZ>"JRE](; MVWJM:,CZ#8=J!AJX>G/?TP^=M3%5Y?C>@OV*,&X=W%5V,77-8G+D#)I. M0@AT>7:>)3!JME:6;;4LJ390KJ.X4"NFUV?)E_:Z&BE#G9'E[#U3E[J1%CP0 M+&"(@C(TR 9LNDX[Y% 8J#;0$'RYKG4:AC!2Y',-G2@]!E#/XSP-H(/?X.UX M=)T*7V?I#O9?XMR";: 4E-Q?*IAZG3*YM4OA+]=U:Y*A2!XFK'RW%3\N%*7A M7$[!%FMN(3*JX39AOC$53T<9-;'E?FI4.58?P1N6J @6ZAIH$ M&XMU(&'!O>^#_J*Y20;YL#(:5M)J^4JJ*YGXFSV*]%S,Z^N7XE]:=*]9I'[= MO2!'3 '9N@TX\)N TILQ M8ZU:RP:4(YGP));"..=,L8Z]%14QH;TTT+7F+IBLG,E&INQ\55-&6'*IGFRS M2C%-(T3V>'55)8AW[WN!)'L9EZ"HI$/=CW1">BT39UC 'T33BME3&0KBQ:$] M.%D1]$PN;GMO^Q"?!6SQ7>\1=6)I4$4YGKVB_]FD;9C:AKP(BC^F<3Y2OI_! MSD5#E)[6IZ+N$VM7Q2D.[W=)= M"NVJV1K>D."M&R+LRY*NSS9)U[5+-AP4>Y?5'^OHG5"R@[R_N2A40QTQB.84 M033W\@Z_>3J9D@^^Q0,Z$EMXU#$0RLJQ=@R4+9/540:3F0N16QN9DGU.OD7F[8I:?W;6_YP0TDOG4Q?QN2T2OWA,SIE>,XOL;* M&U=Y.SKLM2,9_8'!R$#TWF5,]:1$1A[" B$NG:BZN=T+LDLS8Z'0PB!#^32/ MV6,F>PC>?'9&$1WZ=&N5(ID==2 3O^[M"1VS78>V3_"68 STT14G%(8R.$WR+\IP3]V!( M5KQG#@U++M)'\;QI=F&B;=V#%]22J>Y(#<8*44<['*W@-L'T*K/"V5V=']N6 M*6F\6(/]<\QP*@H*XF.7)-$EG,-"5-@[A>6S!">U64VDV(_YO\8?'7O8H1/D=R^CARPPZ')J0Y M(\-DD!3-1_BD49BB(Q!VDN/9/:-59&J@]J4LIJ9,@\C"O M6#H9 CV'LYABU#2A$\)SI!" XRAAFL1%.\BVT#;A.H]@-I M3*R_1FN'GV4-#4<'5A)U#+6<\(8%C(DD)5"-]]*P^(R.U'(S<[DR436)"PI; M-I,V+EPEQT7#7 \DONEI(RK?G4J!R]5E+CV>/DWSEFKU0 ;:A?3#LL%KO(VX M\#&WXC7$#O.W\9HA/U3; \,Z\?D'N]BW(:]5M2T?X"#ZC> MTB.]7#LJPW<^]PF;^RDH5S)'=@PV9KQK"T[%I@/VCL-..@U$':^88[Q@^EA: M\9'8F2A2\!5D])VFE:-P[8M4C;@1JO2^2K"PW0R>9NWB=IZJ;1& \UU;,30Z M.(5).)0!WT6ZRM E/M54JE!!Q,*$"K]EFDH. LZRI 7Y0JJ6%H.10C%-(-&U M(N4D:D"$.J:Y-'N3,%XH?MREYM+1&DJN,FBZ.2C=?7F&6SNC&V395DB8+0[D MRNM_=U/#!:S#O-1"+)VX/03U(;S.BE82>Y-K'9 ;"^4,_O<1SO;\^I/M&AH4 MV$-^X7@V YL:<<)3L/:*E-O]R)-+:Z":YQ=JH[O'.#N'7SW2YI(QZM89)1A9 MO-2F&8\/[$HQ;A?$@OF+S6TJD"6^T&2QM'G!K_HL=6;P0J MWD)Z:H%I#)*K:<>C*\\M5ZHIR^OZW;QBMM^@JF5G8CHOI6B+UZ3C7/ ]%]NS M[E+9YJZ;5':QZ-;KW'6,XZ%*JL3TA5QS!P;:X9JW85]?6'H/JOEI*W ?/#&$ MD/-27C]2"(2VF7RO=3VV.UU<'RO;!MR9,E>O?RI$*F8VP[64\:LSHKI;J[1HS M6V#J3 \ID*R@S'ZD!8ENF02QJ8]>/^WK/%[X%6*/76..!RS_-!3N@A^OZW*: M.1/2G'J&O3AR]P&.E-#P,NH"3HE-I4S9EZ8VH:*YB: MSH$JUZ'>4LYHD4I5PKQ,<7[?8K 6=V$=4J&_$Y0+.X=K+*P*RATM"C&F*%6* M[2#D]X\,(=EX_$3_B;_B&&C)_QLRK232B8A?SYH/MZ.7_/5>:;B#MSC4'/TDFV"C(T?"K3,0A#A-A;9#2B6*%F.VA '7"IC-7GQ-.EY3:ZZ,C=3V?=6#\_J2).E/ MASX3%IDKX98O]:42U$0K?XKT0A(O'@$NOJ&$A=F@D^<3DJ6%NSD6)D&/C\-+ M ^X6;C!&V4+2HNY$8?N]RD>F M*X&+4*:O30G8=%9D#MA.J*O0SEMCO6UT\U?R- M]-ZYE;?T;92T.H<@O?@3KC_Q52^;[?K*VP7W0A9?9I(/%JN3\@#C[ Q+5K!G M@^RI.__=I*E8:YWRHLWN?OW==06-;-*/I.K('%)$Q.=Y/,&,$',O:FT(*-4E MHJZH,F2S6[<8K?#O?0(5"3OYS^-HI^AWW].(I>E^?H M!_O\%@.5>O>E\:/5+'/]2[LN?;LYQU][/[5]J4M'B@VOB3AK /D#Y])^-M]' M"4;G WB04)6>M7E,O,Q4?'+N2HL'*W^MND:<1UE]Q$0@%;E*+%RXI@L$K3*" MA4C:N8YC<^#ORJ96\OU4+\J@BK;?-'"S3[>V3XZ[>69(T )RKF&*!,N]2= . M^CV1^]N4UZ5=ZS;;?'L)^?,R2TRW+H=TO:PU;5!^O=FMK[Q;W0['5S?(NEF/ MR,W^W=II^T,,W)N-NDWKU . BY0+_..&8_!U1^GY:.OV*3LKX35S$7.C)%I;BX M^ZL2QGRHZ8_-MMS>MDBRQP?K=?CP$B_3.N"5&&E<%=X'S=4]<\;JB#I!9I=S(9V69 M8 $KYOWA%CNC&CVL2;6>>%[B #)D6.:/-IO[%3<7]K$XXWX.'IX83ZG1 ].O M@-T05XDP<2-<1R9_%+0<4][O0>U2@26M!!)_%:ZAHAVL_^W=[A= MR9'KLAB9:GQITW+>::HH6[S9I]N*OE 3B\NI>$<4L8[KIFH9:TUP.G#1-P4H MEVS^PNXPO]%9A4VO>=DW5] =!*Z49Z8B&MDN MT8&AFY$8R)K6>)NM^\HH0B2B8 3^8BD8?=JAXP_@)*0+0A )#'!CS7WE_3#D M?DARB, NB=;;_AG:9,Q_N]NG6PC&A7D=K?>621E]NY3,M#[<[.EM\@-,L:P9 M8Q]L>=/6!CW.R87:!$EN=9>,YVHPSTW\B=I=*)WH9@N^XA88>'H*QEVYH()- M*;24;AOI&;DR.4>F)/QP:8,<:9^'S,C,KK/9PZ^XAX[WAFR[JF428:WQI9XW MS)0'GBV1H\$_4^H?TS;DD9E HK1*ZM/N;';P:YH@U+L*EWH*QCF2Z2E$)VWF M: R.A+>-NU+RG06#(R)+I-2R>\S?N0'+W48V#+$!8+IK^V%/2N/"&%)490E ?#X+ M?VLP!&R2NH0*?HHJ]$?\^V8W;TWW*5/FZS>ON$1U-JO31LD<85>$?75:+K[% MQI(O6F6&)#Y*5.)*\;C@EM6849^4YT)@RQB^D?8 5N^5:<>S+FMH(&V..XA.\R)Z^TQ2'W\^UIB?>J &85 !Q49W"5Z9Q M/9?&2\0/+=P%V-*U3IGO5VAC[^4J7"IQ_TC5 B2V59TV([_MMBM"9,1M0U8C M84NF8#$;@MRUR/;29F)SF%9M$XWLF5Z4D2\@)P^+]D!,V-KVEJ \E,=2F&%*^UW(Z M?#:UJQ$V)%3&W7LYBQOJG).9MD;52L(BP6Y9*\\<+4>$G/)Z[JFE2P7=J(,> MQL&H]SO_1$-FEW^_0T!-.=4JECY.>8O4']*K\)NEI7XO[5(SZO1$H4:M?N"6 MM;("JBRR8I:W*36:DO88AM@[<7G_>R>B]G?[FEHPVJ^7 -\,_Y^AAMZ86][)!!8:B-BVO5YTP&2TP_ M21W4JV&C>@V[W75>U>DWJ7/P9#T42P5+O[C^$X^X]3?*=ABPU\W&L.TG#"K5 MJ#^Z'/DD,8;[ZX?OW0F>Q-./9U79%LF6C&9&__?C?8AU9 7?.;!]2S3=G=_V M8?MT6WK3P+.XK)H-!Q\%<05'@]2GEM0">P]80EBT:I=Q4U'/02:XK]5_#5L> MX5U')C(K61G.EHHJ' =\"Y87?O>QL7LI2 3%6BCVDX4)_*.80\H-G/O9S%8= M!KYLU#08$@@+5>,5>+5C0JH:P!#)+LK@2:_F?V%9=UNN:7&+B2TTR%1M7F\KXS*Y "N%.TU\6?)T/+5FMM=N9.=L:W9\2+ MSC8(LP;Y*##'\4CVNB(: RMLLS#"ZW=$JJ%J'J/#5C68&VHR6 8%7VF#418. MC2GAJS=R<6?:/#Z/L]SP[W(C7DJ;B'F4!MQ6:'2 A2/^&K=A;P+4-X>ZLHHB M "[0)0TTJY2Y[?BM>TI7UQ%[#.I%"CB-XU M$C(HPQ&%B>8\FV$&V1-%C;BF$3OM8EZ,6(B;K [I:_X\#%+W4A(=RAJ-NQ)% MAWOWU-JJ<&/HW9_-2C)L*(W]C-)^M!YV##X5SYP.(17]R-:94GSZPF;_[NC: M5YX]2R<41-;#P"E! 6SPUG2=EDCKE"/Y^-OA;(T-S[&AJ,",DEIJ>W-0VF:% MQB-^<$\3/C=,=_U^.]4E]S,U>.E).@JA_ICWEK:;B+LX6W&K\E%TEI;FEJAK MZHG6#_-!+@;GPL!Z%3*9YBAGM M?[5@B3?<&$>&9"WWD>:#R?Q&^D>FA;G6546'AREF=;$2PVL6%LL< M;.ZI0KL"'4IUO+L[NWM\Z(3;D>3@%,01IA?]=YSGZ2KZ.2X^TLQ/0=QC IBY M/[&3N,SCJ=(M$\)BFF:X5_-LZ^+E$*/T0G(=T60OZ.R6I;:FU?# MB-Z'W9I4Y4>*0/I@(J7$\3&U[,D_RTJ<7R60FD4OLZINHG>IU"#1H&%X?WO[ M>UF=P9H?8=_>D7>+X/,M!,+AD:;'PHOC)&"WP<.=-2U?9NY 8P9;A8ETWW9T MF#=S)"2VOCA=J><,O@5!Q/5.V*66R1#6KA%D"PY'-$_,C7GXDLXJ*K_&"T30 M?GPN+%I22F],1TXWK\&Y4'0 5[4_8R'!JST,B=I(I''"!$%X&+8N$!S@UZ.> M@]+&8O.1,'YU&P0Q+"=C:+W,K@!5L(6X2^I'@=*IZ$>TOT@SE]D5K2U*FED2QJP M" C6@6&3$BNV>387-"Y"Y+&VB20V'S-%^:S,025OE]&(0TNL+6CI^RNF%AJ^H3OC'<,) MDP$27Z A*-:G.Q0^OP"&X:H+[5.J^,*4']G.89OMX.2>\*#Y4:6$F7!W7%>VB" MS^&D./"+"\7WL"^.KED6"]Z**%@GM/BH5CI9\(VA-BQ!>TV-!=CV19TZ;"K3 MN,#EVJ>]8H_?PH?OI?*Y*1H^B%_P0J._B1>FW5/9$Y B.$$^;=;=F;6@MON] M:%<5["B2CK16Z"*JY/!2(703/*GLW]SR)JN2+30IT/?"*%+*.:,Z/2<;WT5W M'7+4@;?8',OPZ_BO@AF]V.R0 ?#:!U4N#E_.RB/831N!ZI=D7KII80ZCIM$Y M39 -2!"G*1RAB_$F<4J@[?ZI]K8)#90%^\Y=LY07Q-A9X(^(8TSMP MH7:BUP:K3D!B=##@H>A$\ZOK#MD%U_72P^^V@NNZ))CPUIU7U3%F%'C4(-YU7=@BL:G#A M;G^_4$0*3EGO(_BDHEP"VXH]#3-R)PA.-WC.=/78QM?B /D-;76*3G0OUP#(]&9'JE))32UM.8V?^NRM(NM6%A]:X+>O>]?Y0"- MV+(/N]&.0KWF(A,Y/DC1"\Q1[.\;KTI<^-=$#WF?IB;\:TOXK[PZAERW;\\. M.)(+KZQ\]3OK87+\P?PN%8:=%<9)" K8K$QZX]/;6=V E(D.#_H9@?D_BES/ MTY6W_!5GP(/H^@H+N)G8A9]UY9W@R&$C5?Q-VZV.(>G0M4 +,#@$=)Y6J"_H MT.&5]LF%]]GVP)5S?@ 9\C6FPL+(@WT.#L#C.?R*^O,%(L--6NW'Y&]2YD . M\"5'SQC_&*.QL;2U&UI*C!=]#T0 !:<-Z;>47I(C>Y7/2W*4SQ?ZQKF+GO*N@US7K(?IZNU$6,.[$G9AFBX5OXR*?FLBRD1EKL_(LDXF M_.ZO*<,?$ KE')/M#_4&SR>P'L0&3A1JY5:<]T0"%+J2S"\C27F^O!/()<3KC?1TO0<=JIUP2J!JZ-H&+_(EK 9Q6_U/":M),7I M; <1 +TM=$3H_*'?M$)MJRB"X2["2.>"DXG1#")V%_>0H5E]8_M^J>+"E9RG M<2*$--9;],5_A%+5FD#9PE.8Q$M,_63UM(Q^AL4]A*O6QSEXGV$1R4%&(P:L M:*[8+S'XBL$-8B]IYO#NCQ)Y !LIF67HE$;'_J.1_[O?D!YAI8@+/[EC'U@% MQ$[[33(+?T27_4.*D=%Z.6]S3,L+1DBBEJLE!SW]//P62)I'>D)V#X,=B?I( M(+X->![9>98'!Q&6,*X0^ D.4X7>?TQUHI+-!0G(85-2, +.. TV@OL%Q*QA M!*('&A8S^#Z[,+-4HB!"2&.LRK*RE2M&D.@V%$*\CM=4K:O$[BU'GW64DEYQ M3R0Z?*6<+G-Y8FG7B6 %.?\<9H^QFK9"96 <6>K#XCD8[)$92=HY7H#-AEE5 M!]:T34+\%I&]RB7!66T9$*2]"/$R!&ZJ@H%)DQ7JN)IG$,JW,0U*:)V1FAQG M?X%?$<%)DT!LO$LA-+!LCCC<+\NO[<:-/V,%<$&&Y\I&X7W@O:Q& MY%N+:3.-:\ENEW6-?:M&)C3OKO? 7YSQ!IE8'B.)R(X"_<@AP?Y50$"$@8N# MKP@MX,<4+UGHGH*)-*" P,GVJ3 #(L0:DL--W=VB^D_$;K;F9@FRN2Z++;X1 M.45^?NH&#A7R.LH$EX0A6:-)6?J2:5Q1-U+-V>,J]C1PZFY*_GK=XK9E 1>I M-0G,\\1-@7'B&K2\37GIJ4KQR70(F2%*/D(+E0X/[0!/_2;Y/,HSS_+RPG$N MD7&!"U400PN>Z*M3"YMHYT\'>YMHYY<@;XDK2S/R^0VE1L[MFTG.W/F)>EGH M09%LI&>".67>(U"]L%/3.6I8/&]D:L"CS;4J5P/?".#_L(OD_2;4[:@"XES: MQF=GW*9<[X!%2H4D0ME3(JQ@@7=.C4ZH!!']_,V3 YW.[$Q(#-=2E(J,"-:@ MSD"GDTT($W/+NB=K[JI.Y?)P#*]AW.-S'-?O*$1Y,BR,\S1?$J>,YC%35?QT MCZ-:(E(B1B[X\)_K:Q/;-P3O+- 53LH'[=W8W*$)[G*58/YS+X M9L5?@0/=S"L"2=;AP6= &,'$+M-!NLAV7='Z2[&\#"."J9NBX5ASU(4\!,5' MNV/3Y9;T^D7L31]_7L3YK"U2XHZ4C?":BV&#^\WA9FX@9 M!RVNV .&NQC_" /4U" 2U&#")CBCEL O<\127I.K!U4ZAPHU64SP;%B]T/^, MFR:>?I2[AD1,N8K4LB.=BPO1HL%ZGE6MEPO\PR-4 M!YB<0U-W6F(*;J"QA'JA"^>5YH@Y7+2%<-OR_J#L5:3DY?:#G\YAR 31GZXF M*&,X!3Q\\ZR>DV/$?S%K(GT0E'N!D@38/(MP3\(LAD([H\@\W%LMIN #N0*= MT"9845#@DRB@BIQ]3L*UM[4;3EWB@!K!!'"@=8O+*G!@]@];Z%-QAU:_<6T1 MMR '%2CUQ $L*V)9GJRD-A.M<.81PU 8K"S?POLNZS<=SI 4A6T-3]EMPEO M741L3DD,U]S^=?20RKQV?CP\H7^,?WP$;RAS%^03 IG"MF?HH,3+[G',;.! M8[@58>XQ&@P:ME7;0(<[(7"BPQV&R\LO#0JH)[&N)EM0_O?4ZQ-5%3TH/!!P M Z%A@!DFQ&1_E#/DC@,\Q5/1>9IG]F7(X^+*FQM$RV_&7QNX.=3K7E-5LM'& M]W;MJUR/64UXT7_X))*\C;=>#"P/+C\\83Q+C47$MB?2:YG/B)9Y2R&J&."\*Z"'7/3-W:7\7?0+'()G?21M.VVE03,#/ M'25BD>JOZOJBK!+AKL/RA1#C??D-QO%.C'7B8L) JY5GND"=AL.==GXMI0N" M!6Z8"[:H0177^E/<$F$BQ=.['?U:7J0$2!5O2&T>!35IT,E[(TDW[00'6@]1:,0J0X\(R[5C M"G(:I=WYJOT,0[YE3B4%DW0.QYHC+.9(>95&627T^#I&.2DOQIW :!^7C&:A M&FY-WH?] 7T0OH'_61"Q@DP@F5@.+!.;.(D@J MM057KZ8).7TN?F/'Z;2ES*&\*'SX2@+'O; 7CSQ,$5 Y"NXNNE6T8V@6N\?# MG\"V7M2V73$7ZKGEX:" X) L?%I7YB+EZA*?=>QD<\AYZ.A_-[%*WA?,WJ=F M."ZWOJ:#JLX(12,]:M"@6Z1)YCT;7\T 'K>_O26:+\.A8'I+.1Y9.8T*:B2B M]K$)M379R[3O R>8^+@UJ$^!#%)9LS8WY6N9) W0ZZ&8FRXBUYB12TQDW"$< M0')_04Y)Q2&8"4@ Q61C@];>^;0.,U2KKD-S-TH:1T3U@$?01Q3XIR^*@R@"6-?N!(Y M$JD9&FX83<-F?[!RI")P^. 1I620&/=()4XN)#4^\ 63E.*H7+(B ,[ KZ(M M8.<0_@M1"LM:'N84L?)DA(CY1NK22L;]YC8*7G=D8[FSZ-*A4DF( M$4&]>,2476)"'C\F]:3+!\M*EVYMN4+36(I+D1 M+6%NJK;6"/(BH\M';%M0EZ(%Z-"Y%.PQEO+!W]2)I/+;5$<&,]07>\04R3?7 M8_H[+F7F&;5P22U20^P)J(/HDV!=KQ7-$5A_]KDDTVTBVU&EW]"DI; &I,R<6D]4GJVQ$YL]65;U2VN*[DQV;DF0]U*,GL718[U3\;S\M6(K;: MDAR#D$5@F/"2G-"HGQ :!>D@\9[T8K1Y?W&F$12.(1;-ZSN(094NVT99J.!J M3CN$'01\TM1;(3!?GD(W2$N$+I$,L.;###!0_#R3%U& M1C&0R(,W'>?._9NA,V2-1;$1"-[&1KR'8U$(0 K@D6;8;(7_DC9YZK(;F,PW MT8'@-JA2PCXS?K=BE[/MN+U^/G:6TSS&%+*6B;FCS#UXC27?KRWQ_BX*H[@H MS9H>AS)39SRZWQ(8/4THCG!'+F]0]_;%:BN^+8C*#5%5AXQZL)K)I85[O(T^ M7T^'V]<]C]8KXX#M>^1= Z/<;>?(#91(&_=)GK>STK"F10*6]I+X"2CIBYVK MSLO\G/+W)F3H]!0I&EOWWY"1,1.R,UJV=?SL1/B7U6Y]$]BH*8O-5!30AGGT$5-5R[84A_@ASN-W@>3XJAAGB_ MO)V\-#!_ @C#XEKQ87)^52 M(YRV?)#^3O0<:V^)+O9+;3&6_7"2YEC)>53="%/B 6\I&-9X$(/*XQ0-E4O! M9T9OA@WG\'1IUW+8YBK@>5_O\33S5ECN*09G"J^E/)O_E\.A GR1L@VUX93B M*>B'V'=6.NE>"O$B:WT)&BK&AHC,W?I6]L1*Y]'16R^<%XXTTY_ZO\5%BX;Y M>(3\G#L<#L5?29BU-C+E=KW"$\6S,0-1$ED-@BL!E]GS4%Y*T(RJ ;&-9=%P M '<.W\K)%!8!'=YR-U*N?&>_3\*_5-_E70/\VWE6.IF,,8B.; ,8<:>Q-2G/ MBA!=4I:EP%$7HWO(LLR,-I:]C.IA31P0R+P+(SPI&?Z-*S$;8Q7CAH03[ M5GC?2JZ%D(K!/,2Q#(O\N*9,HVY3*'I=2Y^@MHE;I,L,K$NE.=-B90_9I^(_ M^88*$.$R"=*BB2E&R9PT+#S*RAK3Z\SJZY2-;HK/&*KMPS"H4?!\^WHD0F"$ MK7&Z!H(7('LV!C/*QC*P7FB@7SPI2YA M7W7R<%58*%+\$P,+I3R$TDO^J\)NZ@:R)0/1--TECLNJZ9**0:.1-."GFPP MJ\+95MZ9'-1Q;1@$^EUI"9$0+\B6;ZI62L>P7)0"%T/WDBGS.#RA)W1I=3O, M.&ZS)VV52,:"+#^0_X#+D#1/&(.0N(B)H-#R>.WDS4=8)XP>2 6:QF$X!#OS MS)36!N=,I3F=#I0A2^H"J Q_-/O*8M^5"[4@E/=_?+]D5/= MG.XJ5BRYF D'Y9.NZN@782D/#B(K@\#IX]\Y]1HXF2AY9\B5T1BZ"JU#L(X= M>7":4@SOZ34^#X<;E\LTKJ1U=%L@C10CP(DR@^A,K?'"F4=C\L)"C$BN]&]$ MLFJ1+TVZ)*_O8YHNO9&A##.#(Q.H)/(P4YT$,OJZT<6N)R!>],PV39!!%U-& MK#UZG_B!,QN(K%R6]>!A_$A3]&NW&JYJ5@PP1:&_KX7-!C9;QE]W4L(N]-N( M9HYQ=FC!TX$UZY(A*;A8+!1\E+M-?1;I_,X!61:,0/VP&_PC00N M27WFA]_*_FE70&>&8U(W8&>_2W(@KS32?NAB7W4CWPS M@-[O/:#['(X<4RY3FH%)].6_,EX?;BTYB>N,?QS&&LV38Z*+40"XC>)0* 4) MPP@<1G5XSI,1*@5<[:H7JA6 R$I"'P:RJZR C+\@VPTS@D//]N:22:GJ+=9] M(WM(7N6&#Y/4;%A;:#.P)E"!,LLH2M+4(:38>;8X+FR@ RO72@8(]A%+L*ZU'HK1?^):4BB\2E,XC[7(LIXW%R@@\P7^ND@)BR9N _I%:1$[5"WB>(T/ MV^?A#&WZLUBLFY[BD$;'HVB2E8L4"_>,5\2@V: &VQO)IF33E>!PUZ9@M4IE MA>"DG*/3M 2(H7>8K_J%\6N3+Y:6_AK&/R\V6F!^QQ[VHZ*/V#7!'[5+M0G/ MR!TG>" 2DLD%&T\HJL4:$B-]%V65)P3:C(L"0U]8JX%W@I-QK+!@GG:W5MA?R(0. M.QTL731J,&LOJ1Y;0RUK.+*NGUMQ6EU;HF6Y4"CZ$\ &3:Z#)<#D0=A3T[A MUUD;Z";&672'O+5M.9T)F4GRO&9%*4\QT0BQOJP:QUV1O7 M[81+C-TMBWAG6$P./]#3NLA<<>;=L.R3D'UPY2;3^*672T#>;DC&[;AM83Q/ M7CI(=1"T"E'B7VDZ%&W[LNZ7NJY)H['VL,?:L]!1](LHIN _\+37#G]-0E92 MU"%HC?$-YG4.C6*QRFAD]03NVCR;9$TM10@=0N2BGO$!#_5JYTSJPQB3AG]H MD6D YGRLU)/(].9-R^-#4_\K>3Q/F^RDW#W&N)!)B40-94,$36<%.6F4J&$? MG0RW\9,?%8"JU@3%N1R1BUA>*"ZB4V#'LF7& %S<:Z7J91.S=G@R*HPB8<48O'?_F8&-&Q_UH]!! M<-Z=8_E^$JXM[HUH-NGAV=&3%%6JF5='10JGK,K$MRBZ2L!X*!@5PJJ:Q+,A MPB&@W?Q;FZ],([@AF=?D(Q[3EPC?CTYTK+CL+P3% $9"S'_IA6,%D T+YDKP M]0_Z:[?QZ$H5+ZA8WGQ]J5WLH[UF5@[1Y=IX;:,@G1N2/*6SD2U$$:AZ%J"1]S%%M[)6H74WGVMQC. M?6_\<:XS$A=8;\ZP74AQJ>3H-0$/A T*^V,XY8]O\^@0I_:=1ZH:/F@F,YR& M"!^%NI@@*-2L$\\4.C08!E1+5L1M%'TLR-?ARS'L:$,B_5Y5ZR'8YZG+-<'V M7/KE!'8S:1?F^L37N;%:LB6O!=+*&>1OL DI8EPHKU\.E5(34)Y-C"^GHR6^;Y:8(;3B M;-VK_LB5;DF^3,Y.[>Z(- (]R)AV[X3U5&O@P T]X5LT5>LN#WKZ:2DUB$IZ MVVM<3]L:Z Y;BF0L5&,6#$8H',VDQ!?FL,47OA?W-PSM\G*@8 ". MU"P:P[)& 1B04+4&\> =? Y)FL^4;:,3CTP=K--6MBW*1&K*'!Q)N5.)1)9L M)VJ71+= W3 )YHU.(M U6)+@&KF2-I2]21F)> _R)?,4#RWO3Z'#ED*'- M*[D=_;< I23].(H\:Y.#GFJV_#PU:$Q?&&)";.A*HU]PA=!*IUNN=13P&*J: MK0[(%/]DC%'M\VTJ"/H(45S2A#$,QKO& A[#[]QKP1.@-;7>99A"<2B (GA3 MGW3OD 9VDJ8UXGZ]+F"@GNAXFI*? [,67(*;,J:=Y381VT]]%2J99]I"[ E6 MYES1&'YK._J5/5$L-U620Z0@E"N$,VC.&F3>!0F?NT:* :+4@L")GG*1-==! MW\)W)9QCT&I^P08:#7E^)XY1!?"I (L\&@0CCX;1R)UCT1.==>(K4#,CO0[Y M.(#DIB)?)03EPEVZ.,U1@Q<5X(#F;O:&3P?7DV*7-3/EB%X3E$!+\;T ]^AL M*-49Z!;W&!M-F=.H TZ>5&PI6IP)J[HAWL>U\.7B"A[Z34KYLI3RDTU*^0]7 MV1SK13G]1:)TNI&R#YW]Q'0$=I&R3*_PB&UT8+75/+4\$%[> M)&;NI[+J9@:2Y64BOR8\OPZ@M8Q4RM?_>]O*"*9.D\E;DS4$VD '<+R M19069*Y78S(0%E;>W5Y8MD#YTAY6.$QB>?*]H9GC7Z!/0JUR144?5B &5I"+ M!#NS19H1*'AU@B%@O ]P'SVZ2TUA#N+0AV MS:*SK96*':E%&%UP@[? I5@78_=!JS%I P[W7RH",1+SRDFQ-5W;H*PU3XNS M!E$)U/ GFJZFN5BZG5Z*FGS+JEY?^H:;B; (ARL;9.4RBW:GXZ)G1:H:. WI M*Y\N0FLEM( 8 %BKC%AZJF -#?W6I;8TG0*MD?85-EY!,/R,3C@(4TZ4,!HW MAE7!;[$I)$78^-..Y!E .,73&*.,$U48M%C4@18W_H3QN[GNSL_%-WWB:A"E M[\(S/4]SC=>3:,]ZJ>#:E;WTV)78;G1Y2.+Q"8JE'Y=5- #[_4<:8,--;(%V MMLVU+AW?*EE+PE-K23(N+8*JW<105.#&0+,0-TH\!L?LDC$"TT\-R: 8E8B( M:J1[\(<_L$MA]-A%L&ABSZ?D,."J09V:,$H?E"I1AU)_8*(BH+XO2V9V/,]2 M7#J+^N;XC,/8#]W^'8TA#$TXKF[0EGQ?U^J0\.MQ+F 'O-XQC;#E[_A@(/@+ MUQ3YL$#.]_3,?^0[U07$%G@5X(H4MEN)KTNG[_#G.+Z+JJ3\EBOGYJA&C.LG MTJ3EC6L1)%ZPKC0U D.Y;V<,F9#XD"SYZX/L()GM/M_??3Z=[1SL/Y\<3";3 M9'^\/]M_-GT2'SQ[^K_CG;T'G_7JAB)%S@M CVN+NOTLZ_0'_<>/<,27>;SZ M(2O(8*$?_1B:4&@<(VLRVGSB!]#K^&.QFY_O;3\[>(ZFCSP]YWM@V>[@Q_M;(^'?[+F4<^>;N^.GUWZJ,+ #NQU\?[#WPGD." M$O[#[O)3- []GCR=]=>@7'YU0[)GPY-W/WN M^)>3T_?'[XY?1*>'KXY/HSV;UZ M7I^\>6>4QI]=03S_)HR(/YN^N \VQ/YW94/\?O+Z M&&R'E\=@,KPX.3UZ]>;TP[O/.?XF?GA?%4)C4L*?KQK&NY>HALNCJ!OM\-UK MAX/O2CN\>?_K\;OHY/7+-^]^/WQ_\N;U'](+]S;)\ZZ%8SG>F1QLC:FJ%^,V MAQ6Q=U-L,M05V:K*W_R!*B18,')"J'3:&[U]RYDT1 MW60A>/:'"&'(RN)%W*1^ 0[@%HJKZ3P:,\[NX/\]#I[\T^@S7G52)*_A3_XM MX/']EIYG1?0:BT2:IO\2#&E]UHO>9TUNWO3TP4]'\RR=16\J<\? M4: GG%*J8>CU;,7(8A@_02_.J>,@]EWVV1^*I)LC]' J!7CTR("FAV.\>>JK MOV0!7E82G$1.=YH^%;S5#WI+LON >.T6<5[_]0%HIOZ.2)_7+*T/S\X.L63] M<-&$JU2TBZVD;+;D2:"80=O"0W;\HH$#\.3)Z,G.KJZ9#O$GKL5S96]'G?)^ MY!(H)2/!I'Z(Q&] "V >@HCR;RYEQY^6&>-D@K.SO_/@)V7SV=NAT_.D+V0F MHI_&%595RF"4],AE43A7#?LOC>7KE'#B5,+*57"PI5U_.'S=-Z&]7G ;>9Q1 M,Z]2Q.85S;R.6/A9&^V)-AH14^RR(>R\6P^JFQI%!0+L1! XT2,-"[F7)B'B M^.QWY>4*(; B *[L#<[^#$Z&D9#Q^L-?7J7O+AG$^VI1--<= UK,UW[19[]E M[\%/[I3U)MO7?,7*TS]BPH:;W"K>*KH %=*D!?>,=\IKV8)H".&V*C+#Y.R M $2<:[7I(DV;SU*EA-A"?!2EN6 &6]9:4>T=>VOE"R ]UF5@-M@JAZUZNAY; M=1-?\L#YDG>+R()UF&[!VN)I^*%N%[#LJX[/N7%A_R0N[)/ORH4]_I]?3WX^ M>?_Y$:V[D'L8^O8.G^.;"/ZS[2?/#VXD^.O^OKN]^^QF3UH[IB?;3[[<$7I* MFBX:D#KB ;D+L>M=$+1O>]OC&YRB'9R-+-&7.FSN AB8^FSVU:;.@P/'JF1_ MY0^0 C\ 7 ()TWS;+^X?'CBXN+;1CG]EEY_O@0 M[#Z$]CQ.D[.X>HS8_<=@"NSL/3UXC -^?K SWML9XS_'>\\>)^FGO?'VO%D@ M4P$;@>@*ODNI3" A)F;N80YR;4N"W@VV01OXWL/,C8XI+5S/ M931LCWGS(A!XUXZ./9R_U-'?P3,%"P9MOSNC^E_\+>M] M2>IUS$,8R0K KW^/5S*\9_S9([BMXJYYXW1\XZPJD8 ]UN9?XC3>]&O?IYK; MW:BY/X^:&X^?[XUW#\:[>T\1J?@XV=\YV'EV8+1=1[&]H!HP3_E]FE)]UF'T MM[;(X/B_)39@[.&'7NQ;TBP5U;=C]*RK"$>7:L*KM: OZ=XGY;'[1W3;40LC M+9JN9GNV]9M15[TW;M35W:JKO8VZ^M.IJ]V]\9-GSY_N/DX.=G>?/=M9KZX. ME4?-<;S\8>/ML-E&4:C?>9A>*S=9;+4%Q+<_$[G_ [-UKK;K76_D9K M_?FTUO[NP<'SG?W'R;/GN_M/K-8"%8+MI0>5T\\KK@[J^I!=3^\U-II&PX3< MO-W]6U(K[K7C77[O1K7K=[D>. M-U+YM:5R$U7X\UUXX]V]_:=[!T\>)WL'XZ=/]^'VVI<+[Z6AK^M=.XRWX8B! M-MG=W]G; M>[H/]O339T_'N\\'U,L_"$9#SO];!?H$ZH4:((;>/5$B)$%[>]0*K\J8B\A/ ME2W5DVA.F/]BDC87J51@*R@,_R[LD6T=OWO3Y-/]1:&Y M5MK<5)^K!:9\=\#XQCMCUUAHW)2%X)GH9'T?<]&_?$=3BEZ7T?@[F@^VD_AN M)H,%;]_1;."Z_HZF=&0<9 &46G)7CFS7_]Q^[>WH_840L; M=28M9A!>IW63RP>GVX>( 0"CA2*)KN<&?B>=1J^:!+SY!_87OW*'0/'['SP: M]7)WW]&B&\OM.YH55PYN;-"[!$V,-S;HMVN#)I_J_\4C!&[E^!,"'WIX+8ET MO&7:>_ 0CUW%K53;@\\H1,$?J*L,UTWNQ5OC?>SFCEI]?)#(?UTO]H'-X;0[ MY>9TW^WIWJ2(OY_3O7OEZ7[I6,-GU.OR:)NZBS_]<;QWL+/1!'<:2;Z)(KCWP$,N7?Q:,[I,9WW5:2'9 MTZS,\_+"MOFH?>_(+UP1BJ0\3 ?3<->\$ZJWAT-.#2.Q4O]GY:9_YSIVO(+S MW\;48O-_?G[WZI&0]*?U#_"71Z!(XC;!YJK\IB/LHE)@QP#X5UWF6<+PZCBG M9@RG\S3%7G_-T.A(E[Q(IX1T#CY"F'7VB/_D7ABM>1?5@G!SC-*QB96&C>8] M<1?]7A)WT?&ZM:+1X+M'^/+/?#ON8)7.<7G/$=U2_Z%1G'_>($Y-EX^_1,=P M S0K-XQU1$[KAW%N-OV:JQ#7\^@ER/EGSY[^\5#G_[K$OC)->?4X_ WH1S1$ M3+VYE6[G5MH^/?KU3XB<%T6+^C-Z'W\JBW*Q4K6+*+GI/%W$T8MRVG):;8.< MOWW)/#I\M9',KF0>Q?E4.E1%K[+BXP2QG1LYO4LY?7'\2.F73%]%4_2?".A=[]/**%OWQUO)+0KH6]=H\"-*KT/VS7> MN<_%"U\]/#;%-I814KOVHF)_J-[PVK$Q.B?'[X/VB=]&[W2WG:*%X.^ MS-?-I>&7N,:(:BBQ;W+2@BZ;QBU&,ZFM-+?/E@['R S'Y1N(F9RD\SB?(=P2 M'T191?X"/;E*VP);".,#X[:9EQ5,+W$JZY99J9]L/WUV8U;J@^V#_2=?A%)W M?W\;+HPO\JB][=TO1)4-Q_K@X/)!#=\FTN3Q3JZ3+VN/_9&W/[G/!O@PL[86 M0K/U@=70U["JOY_=OD?[,VQV8J>8'[ZG[/GO\4I9\ Z^_+QNJ1OK\-1^7GV% MG;K3&3VN'T>G3;J*0.P&:CP,+C7E7B-=J!LN_5!CXWO@ M#=#.#._*8#/L>S#:HWF,_7(*M4-_+N,J(8),;;S?[AT&+A>1ZE'UW;8-Y?NYM+=7+I_DDOWE[0$CS:.CJM) M^N_O]M)EK;SVVKV+Q0\7'L-8W :T!UZFSXQFG[DO4*7I=%JV!2$6>XK^VKV+ M),"TZ>=VW0CI\_41TL>3,EG!_\R;1?[3_P%02P,$% @ )(*N6GV0Y61= M#P 'JL !$ !C9'AS+3(P,C4P,S,Q+GAS9.U=6W/;-A9^SZ_ ZF6S,V5T ML9V+)TY'OF4\=6R/[&RZ3QF(/)(PH4 5 &VKOWX!D)0H\0)0DANV5&<:2R+. M]3L #@Y \N.OSU,?/0+C)* GK>Z;3@L!=0./T/%)Z^O#I?.^]>NG5Z\^_LMQ M?C\=7*/SP VG0 4Z8X %>.B)B D2$T#? O:#/&)TYV,Q"MC4<3YILK-@-F=D M/!&HU^D=)'HW>OXV8/O-C[DY@BI$TC?+C M9W[2F@@Q.VZWGYZ>WCP=O G8N-WK=+KMW[]"9<_IVVE;6=@X-NTEBQ(B7,">4"4W?!W!/,$?,9\&X^ MD;S>5M>5H([3Z3J];H;43-ES.@?.JI*>6)"E-3QJ1Q=;" O!R# 4<"EA/H<1 M#GU)$M(_0NR3$0%/QI /*DI6&J0N"\S&(&[P%/@,NV#VX:=7""EDR706,(%H MAG*$^5!KRIE09(!BH8-;M>2)49GV;? %5]\<]>W-,_=:;7NI(7?& M&,\J24[31-+C7ZIH4!9'>6KDDJAO3D+GJ)^<;D]&Q<8Z+#M*-1T2NBUUR.T: M1:"8*/5WOJT:BWY668V8LI(:^?W6$HN$0(%P5$4@!_?-.'ALNT%(!9O;=(8\ MDN1+E6ZPPLP#4D5VTEQ]V%@FN%X5F4ES]2%')J8T$)I>_1+_-IL1.@JB'^1/ MJJ\<)QUF *-D!,_,8?&,U_WPX4-;7Y6#O2;&S&6!#^6-VS,6S( ) CP]_VD& M$P:CDY::!9UDI/X^8_!&:I(TR0A8[?7JLI0 7$X6VM[KI4$)"Q7X)RTNLE"?A_>\-=[%^D M=1;(]/T.CZ5ZZO>O@ZO"=$J+7;9/F"9LEW'XJ:/_ZR)GF? [2%,B1?JQO4ZP MQBKDX-W23_KS>O>.B>,F)81K#K*F6^U/N63QCXDC2]U+/:"26'[@@4\\M>HY MQ;Y*E>XG ()_I3CTB%!YK24 ]AQ+(/KPX:C7/5(0W4O?P@*CF#E*Q3Q M1Z\7$OZSAS+/\7>823LG((C4?/>XKK(W@MS;%F3T>D5BXT%?.),'HULYS&L= M=].13:R-8!_8@;V4@X(16DK:]^U\+,Z"J;1P(MN01[@.^.[1+I%@!/UP$]!7 M!"(E<0]^/C3W(G!_3 +? \8O_@B)F.\<_3(11OB/-H$_+?'?*)*Y#X""OHGY MY-(/GEZ@UV9$AO]=R@A,O?MP M.L5L+N<],J9D)$.3BKZK*[>$CN]D6+L$;,':2H01TP_KF&IQ"LVT0"0EHEBD MGEV70M%2*DK$-B@ !O (-(0!N,$X8FH):PZA":RWG76P8B8HQ:5!OK\!H?)Z MN;J[G\AIP-+QZU1&KW?7O2XY1 L*R0-I)@UR^A5]!"[T7$SH34"_8/8#!![Z M< ]NR(BP']FL6!GAZ:W#DV*+"$62L;/DC):L&P3:)2;LO]@/X0M@Y27M'$N4 M\FF-L!RLPZ+X(,T(I3DU"(5TN?-;K F(C"D?K*&A&CN:$TJP:!,09GA&!?>T)VQ5HFL3H]+?K M3H_)(^4EJ"[A9:Q6-VEI#0(T6WJ'G]AB<6RU')TU,VL(W=1:D&ODT]- M*GYFBRDPE8(KIC;!D MEK:Y59TF@I)?H:F$2RD+(S29U6Y1J:>)Z)34$2I!9.9CQ"FS5BZM2C01+%4\ MJ(1*BL#H_LPZ6!$WTH7S01YMS3-M7V?TI9&('+ M%!X*SNV@US'+)J&3K05(5^'QF,$81_Z.6U1#K#);(XI6I0?=)"5&P9NTVZ.K MF*JYG6%78*9N\GC< MNI]F&!GQRU0U\O%;,-XCIIFN_O(G>.":J72&3@2I"[=#GT0SU+9 ES(U IRIIN0#G!*"EE+VL!H1^-Y] M$6"_=_?0[A[:M8T8_0^_"<05=?W0 X]05<0*19S GA,_%.#%5'#8PLG+W*Q?'<"X)E;,TP?X5Y8+IYZ[PN*&'Q8(V MH'B@W*CR;WW"IEI\O:P.IB@[R!19BW9=G?0AH85:**57TMY#6*39J#-&:*%> M? II'VZQ8S>'/E&J+X6_V))2S@Z[&8RH"5GE*L>-EQ"Y3H,W?F8\F MCICY'KO(_ U[G0TG(VZ9\FL1;OL>M^;KN^@Q<'-,/97 S-301'=P;Y.!KQ%1 MNSN?U.(_%J0W+1>B?D%2V![CR'R]E=MW71:"=TWPD/@;).W5^1HQSI1FBS". M]J)C22@EJI$(YY]PVG#XM61FQ#)3JBL\.-7T03C?X_F_7CRKCSN!U$J $6;[ M\W$EEV*AC40_?1-D-5CS*(UX9<_)I>^B;"8"Q:;#3)'(!'.4 T5@KYS&VV.> M]I1ZL-@=)IYTD/;5WAL:/D*5C[;N=!8.M(&-$9&I/IHA()*-$=.I!N70][&$8 M"O6>.2_T(1A=!W3\ .J]:$.1VLJL#H\U2R-LF4)C#%LB08V.2H:CA$07TYNP M>TSC^42..:M@; .JB:<1U4S),0?5I9 /[=6W M.4;?5][XJ-[W&+]"5P>;>M?<]X&T#S-WTJ?>N72N'^B=_-C/7V Z!-9">,CU M'70G+9F>04N_ME+=T6!!2HGOJY.:":E^8?'Q3-_>\Z#?1N>%4:]O(1Y*.42$ MZMMG%H2SDU;4G B8ME#T\KKE&XR/O6"*";V2%Q6GY8LN,T;VIP$3Y$\MYG:D M(DX]#NR6WD_D[RHU21U)35L[PCY?F%N-216[HVO#:!]>7H A$9;>B'Z9!E0& M-YM;N.**NBPJA$1_K^C%=.8'T*('>!:GOG[Z;@&H!JJ7' Y%(L9F1+SKGY6/[ND6 MM1C$%^/L5RK'"1^\ ;A 'O5C,_DO'Q%E7O;=(85C[,N)K.U8O')WCZ[_+&Z/45-+ M$,HD#7O$G\OQ248-H:K=XB!^G](0^S+;D=E-H5]W*:*NJ=(]_/$-?-\PMJPV MJL5(J7:MU?\JAWB4&83,'&2NE9>GQCFM.I[&B\'>F)_9&X1R@540_)7 7N-A M($$(V'QQ=-DPOA83U +PV]&(N+#038)S&3(Y3,E%=;EA%H2U,'!P_U6%W."^ M;Y@);3]S>?KI\#[3.&Z5@W/9WK)OK:S">,-/O#90CJZJ82JQ@ M^2B.PL[Z$J)>*!5/B&P=F#E(F[)J6%_Q,IN$T687>2^V21W@9IKB7%%G; MU"&5!>G#JE_E8&#H!WI[?VIA41UL- HAX$@:GG SL+ M##;EMJV%&6=8W=U7KOYJFSJ,[9%&JY4:&QOR*>I@T0V(.Q:X !Z_9,%4]^HX M]"^>@;F$0_'\8T=J!S41932U BL MBVO=:*?:L^9CSF_'<6C]"T;D/%$Q-]*8\],^#)V58B\7!47NZG5+$N1 MU;8*O1IF<6T]&N*2L<$R1 MHZ[J46U5^L9L:=S1+F[-D?P]SOU(W>DZ&TGT; MT&T8U71K.CFCTC=4D->;U2+#3K0ZM5/^M);*&X[%99K52OES.^7/:ZG\A9WR M%[54_M).^M',M,C R-3 S,S%? M8V%L+GAM;-U]67-;.9+N>_\*C^_KS3;VI:*K)UQ>*ASC+CN\W)[[Q,"2L#A- MD9I#RK;FUT^"U+YRP:&.JJ-:EBB*YP/R0VY()/[V[S\/)\^^8S",;DB[-W/S]]^\\;[_\AE^_FWOL7R]^>OW4^ONV-]+'\Q7_^X_WG=("' M <;3^2),4WW ?/S+?/GB^UD*B^6L/XCKV9WOJ#_!V=N@O@1<@.1__3G/S__^ MEV?/5M/1S2;X"3C7UP,(85).IXL9^P]_7SZD JXI]'@SP72GZZF\0S%9):NO&E2 MA3CKSOYR$B).EJ^.CN?P+82CT;P6PFM$= M1I/2['BZF/\Q6^#\Y32_GX7I_!,FI"4=)_@'+LY&*GC4AA5)ZS72*F6,UBO2 M$L6B,\LE26P_TG7!79V%2\QZV:5GLRYC1ZKP^;,?6-76J59<(0U=ND&YJROR M]!TOYL>'A\O/!*+6X=G?EVYVV(H?B]D^9+-B!HUJ5^J\FWZG9\^Z$P(R4JI( M%H2"XB4C;9X#>!%T,J[+&QC=EQ^_CH$$$^. %O/<#,9OPKS V)>_>?- M?Q\3[R8$:/YR\2ITW0FY%/\O3(YQ)&)T#H.'E(T#Y01"]#%"3(YQLO@)16PL M_+6 K<,*^>18T5XFS>CRL<.C,,YO?AY5"TT@/Y CV5T=NB^*F&K(N:&!@D)7 M@*B;R$?D+,KB$K+ZPJKCYH@8@Z,3-NP[$.%?23H\+.,]Y,]I_H\=TXD7]> M5=C(!R^YQ02%;!CQSUH(R2?(R95,H6+.NK4^N(I@'7F;)R?O'6:YW2I?S-*_ M#F83FL)Y-56+DY&/+BL3R#75A3S5G,EGM9:#],8Q9L@JN=9^XDT4.P=-F<)+ M$F:8?"3M^F[Z*AR-%V$R"M(RG[P%)5R@+SI#8#Y %((5GYE*KC65[X RI(!H M1Q;A.(0XJD6C.G1V$UM(Z+,)YB M?A.Z*3GS\TN@7V,9I_%B9)Q*C(D(TFCRV ):\#P;T&3.E=5):.>;6\R'4 TI MUFK,F\8B:1EM%21/(2_'NPK[2A&:HKX$4@<$Q$*!YW*TM]B6S%#&Z!!*280J"@6A9 '!"^6" ML]KPUOKV(4P-QSP*2D:?2P:.GFP<"PF"R>3LF&RX\E8FWCJU<>GQ0TIG-&7" M=<)O.^5-O:!5 M+5HG+^Z!,R1MV"LG6HFDS[0N)\=:%Z*I\\82#F%(O]-W&GE.26N5#3:FQD/Z M[G%3$+TR8D)CS[=EE$NZ*!U(,4M)2\TPB%@T,*VB4XY+IUN3_6XT0S*-._/A.M$; M":%Y^'UMC&>8-'?<6)TA"5M N2C *T1:D]$B4Y*4M.PIYKX=T9!L9'-R-!1& M0_=INNA"6OQSO#AX=3Q?S Y/RRVN0!->:M+P$7QAI/NY*1!063!)L>R-RMZ+ MYH[4&L"&9$";TZ6]:/H(+D?*HY,.$V3G$BCI%.DU:< @"H8B&BO*O@*M+48R MFWZK12:O,2[^F$W3V5K,Y*2BDM*;PJ7N=/:XR25,"#*HH\8!^;UXW?1#$D0]A,[KO- M=:\V[PS;R25"9FD+13T)$BH"Y\EC<]%IP!1(Z?H08VGM':T);4AVKQ4[^I!* M,\HLRR\NC?02'IE5R9@\2"R<#' P$!.I+6Y-EC0;&;%UDNEN-$/:QVY%C$9S MWXX+1]B%FM)ZCV&.MU'4L9B9C1PP.@M*^PPQL/K%<9^4#5RT]AX>!#6DG>YF MS&@JB79!][(F=A230D#_.32V&Y75D6M:"915*0FTU:\R"U9/;$OQ3)<2' M\G6.RT\?<>.5I!& XYG<-.X8S28M062<]#!/AMO6_OZ]@(;D(6\A^?LYO6\_N0W+ M\F9$NL7)QTF8+EY.<\W0']7MFWJ*3Q3&3"T\EG?"F1(;FD+Z[WS9#<][3X_WX5? KN =#I4Q%(\SY'@.(J?,M/@@R5=$XTS M'DU$8QJS8 U8PSO?MA,G6@NBIW.--T]H7V(P#38KG11H4T_CJ63!B9#!6L;0 M2^,9;[U'OCZZ=?ABGPY?>A)+GRGS6- (&M, MZ4,I\^WWRC^&D\M5O>ALB2F;>LA<02T A:AIMH-)+@6,-IO6!T!O1S*D0'=' M#MRU,[[#U#>C]YO#H\GL!/$3+@],W392*00MY@Q,:U6K&^N6*V/@H^$\,/+1 M;6M&/ AJ2%%Q8W*T%4C+TIKN^%8X(G)OJRZ.)LA3.($3'*%YMM;[DEM[57>" M&5*\W%YI-!! W]L"YYA8/5CI)(28ZE&N6+L':@[2."S.I2)2\X#K7D1#"K(; M,Z.A*/:SZ7R>_E.&F2PE2!W)^1!#)Z0UEDO0@FMMPS6P36D(+TQ59J+ MY1IA_O;B^IR]IY];]L7\O*"OR^AR5DZ)3[]MWR#SH>?TU2ESH_$U:IEYKD N MFBP0"4K*>LDR$4EKF$#!'3D9B"RE* J*YOG06V#L'O-_Q^DQOJ5U=1OUW_Q, MD^/:>K?&L?1?KFTE1(PZUZ9+@=0CN>&>0?"!?''#/#.%%YY:1W=;P!Q2>+0K M?VZF!/J56D,K-U]FN4X;N,U'.D@KDR;7/**L"4\:=>(&$E*1'8:J1#)@MV>-BR%P2![/49(FCTB:UCG^N M -@]C*3T)2KD4,-B4)$9<(9@,<9$#IXL2&Y=RG,' ME$'IZ-9,VFWB^[/-/&=I=13 Z_D1Q7(!;XR#$H),V3&51>NV7/?;YJVVL)"F MINZ2O"8?:3);%D^BS]0%;Y^_O1C.DQ'U33C020+LF +BTQ+^3"N["A""]S(?CZ7B^J#;].YZ1 MU>@0?/9DEET@ QUJ.Y^LAVQ(F?RF1.E!,(T]IWY+I5&D?K0 M!2*W#GD6)LK69W+NPC(DDS]40C618]L:6AKE["K-STQ3$HB2U3:=-=U&'FT= M8Y!DJ9Q%+EB6O'7"ZWY$0_(5ALJPAC)]U#V_*TW!ZS3WN_5WS^/VL0.X[F@; M;03>TG']HMLZ\X)9#&#$\NQZ"1"8U)"M]#)P::-O[;_= Z=M"K_$%+RB$4F3 MR)]/+H 7F8/P%+)1V*YT\\S)/2G\Q\Z4M.' C5ZA6\]X6[MVQZT"+[^'\:16 M8[Z==9_#!#]C.NY6_>'R?QVO;//Y/,1ZOB%I!3[7CM*F1 @F>C"V[D(:YGUJ MW4RT%?8A>6-]4>U1Y/RX5C',#]Y.9C_ZMH8W'[,7*_C Z%I9/WK,M<,'-PXG M7'WATCL_8C>>9>)95XOP7N/J7_IY5:KPYF$+*PNQM6.0,W[K>QUA UL=(7PL9M]'Y-T?SOY2AQY-WU+?O(T MU?*/M!A_/V^KX"73 5Q6""HG"<[;#"5XYTK42O/6X>[ZZ 9EW8?+\5L?V,8V1':"XP)9^*,5'SUDUSUD>/CUW M%7_?]+Q-NVL4GDMAP*7:7E\F U'5'*A.1EEG8BE[HN>#QGWS>:!'),2\S!:^ MF\^/Z]TK'\KEGI&CG*,I*=2"R=I'03@%CH4(G/LH0H@VF/8W,C^$:DA.34]< MNJ5[24M1[;R4:@"WVIM^MSHB76_;G$VGI#IHSFK%]*KY? USYR^_=;B*IT8^ M&RQ2"DBFT!QX5\"G["!%6[BB.7">/10J;OGLH16^]4F;?8BG95.DK@7_@%00_(-'D$) M[2ZH=OP))TOV?BA5#YYIQR7[1Y[(K (R<(*1&^.(RR$&36X,C229&+UJG2V] M!\Z&!T&?M IJ+9UVY8J[.-(CCY%YB068Y6;5YC(04JC$E]$;^M+Z5,%.@/ON M7#.*LG CE011:C\=EAG$& PDK410SDG5_&+SAS -R3_<']LV;6ZSD>2:KKZ; M6%Z2*NJZ$](ZJPM4LS;6"YG!A%RO6L@<(F8/!$I'&9 HT<Q#8GR9?M1.S MVLOP,3)/"0/S.E@(JMZ*EDNM:&$.#)J$WAG,S2\?V#;SM/D\O,:C#M-XR2/Z M?H)+DD[SR\-9MQC_S_+U$7,ZE)@82"\*J)KM<DUQ76KM.!)>6*:\!,\%305: M29-" 01/-$D\:2'"->_@CB32)D]] O%^*]KT*Y&>VD!=Z]]^&?Y9H:E*MOA( M+@C3*E&X*2GE%.O8FS7@^[*7)_G76O9\=Q48XG9[U91]X+B@V)A_)IE)( MW7Z_XTX\0^KZO">J-!-/VP+R6X9Y5J!Z7K0Z\BD5+Q#!,R1UE[&VH^(6D@]D M.EEF.K96,6N#6X=*[L]%I7X$UV. ?ZUO_N4KQ&02Q27.2#?6E'%AA%4$!;F> M2D]2VW!]^[Z'Z/YN?.NPR_^YV-6;^'HDV+4>Y"/TV1OG"V@6(^E3(K\OG'[D M:!W+.HO?< M.&4!1=W7\M* 1RSU5G@N93TCIEKO36Y^8/-/EL#>7@(]:J%5E@$_47PX_E[5 MXWRD2ZY]E0246'L.QDCZT0@%R3!1N R80^L>K.O@6HLR\D^O87846(]4JKGT M*?U1'7,(CF&]EU>[VN!)E@#.HX:@H](II1Q\ZP/A]P):BSR/7;76/WFV%5&; M_;&;>.Z^J^7<9-ZXM6,D-28>-0.6/!G-4N^Y5-5\FD2651FNU+7V*7?LG+7! MLQ:U])^$6H\EQ\H]10G!^&6AF<)'B!)Z+]3E;*VP/32VV.G2X?;WQ ME]G+]-_'XP[OO%IVQ&GH+ @&I:2\*G!UQJ3E1GKV29KH6I^S7A_=AG4VC[+X M=B777=7(C677O);]'-^MV^U!>2<*L_6R:E^]E@)11?*"K3"9.U( J?4%&6L! M>PI';'IGU,X2Z^=@39C@AW(WVR,C&,EPD*IN@K&Z_Y504DQE#4]6F\1;9W8W M@/<$BF^:\ZHGX?7"KG^$Q6DGFV46Y^3L"MY783*9?RC+);&X7C-D/ J1ZE6" M]NL[XZ0GT!Q3I\L[%O(?78Q.KW6AT+_V;?IN'[8 MU5?^!_-K&MSTV^JD_&MHV,MGQ2@UY&+<;8K)G??7>]+7L-O)M^ M&1]BZ<(A$IXRZPZ79YKC9/QM.?3/]'5>QIAO#&)4LI6!!0E%\=H:J][%3 $/ M9([9:L:]\:W=GUX'U.N%AS>GCR4K2I(1!*<(5G$9(":30:(2(0E?C&C?E'\3 MA$,Z # <)F]TG^)N4M_759R'2[E^QU=AD0Z^'EUTP?LR.QW V0R_(:-&\B(O MZ$L7IO.P/,?^L1LG'#G!9;3+BWWXLEA=@[-H0?AJ]1*3S+2_6Z7W80WIE,(3 M70./P*]6?356H_IQVZC^P!\7OMTF<[VL=2PHO-:!@3 U#I5>@(\Y0"J9,9,P MZ5 >\G!ZQCBD6&]XS!\20?ITV-^&<;<\1_H/#//C;M6?Y',56WP1???*H%.W0:[_JLE)O'*6%RA*$3.O5ZF)9\ULVUL4V)/^]5X[=.(72 MA_#:'6&Z?RI26OE+F'_OEMW^.PR3.C>_A_%T=7%$[4LM$84FRP0JR7H%/!:( M(D2P.7'&D?EH6Z?MF@ ?U-[$H[*R?[D_.F5KF=@%=%$,]]8D8%(Q@BYUO6%4 M C.L,,990-NZ"503X$/RA)\$8[<7>Y^N[&]A4OWOSP>(BU-WZE(QT0XNZ7H? MW,"UW&($C5S$L\=05+,8,5U(UW@.QD=203J:VDQF>5%005V8#**U^W?Y^2TN M3%M^UC]GW;]JO?,LX;R>G2_&\ZI8G:>%XK0#KR0'71S+CD(N+MK7C-Z&9$AN MV]9RO^UVLQTGO>F->4LL;^NEFP>DONJ5K2/!#!>&5!03M7E"SH1%HP#,RI8D M4I2Q_4&%VY ,*>?8G@#;3_J>C95$!A49MW_VTDT:E>29JSI/ M\!IY:D\+J(0Z9"^-X41XV[QJ[%Y$0S(XS7AR2P5%*Z&T"ZLN/.AU.H_=77BD M10E)H )-3CW-#D<(#BW$R$N.1HJL6E>-M<(^J'Q ;^Q[%$GOV5[>423?UEX^ M\)!^[.4F(VN5D[_QM%>K<^0C5DFG?00; W&11P&!%4Y1/1H7=5))MXY3[@33 M0 '6#R:Z%XH&2%)A\A;//YV(?W%^?F2$-R8:VXO (T2-@LK MD(7&9-H WI "P'[(U)>LVE55'W?I(,PO[=:/%+TKYUI[XGD!^HD1O2-"(9(K M:PJ]T+Q0^@:*0>6B>Z'&CC/?[QVLAX?C544UADEH\ MF8_GLW*UG^(.7E"#IS:YH;7MV!OY2>_)%B%>?=YY"<[9F:#7QSA2GG2($!&2 M)P6BI,L0O5' >2IHO%*Z>;N(=;'MJJO6?<[_Q]"]G1UWHU)+BQ3/H%WMWL&2 M@'I8%9POCL68DN2M,Q";8AR2/]4+QZZKO5Z%V,PL;H+R"U$'1[:(HJ+@P)EP MH)(EI] I!1&1T?\,.FQM-3<&.21_:W!DVUR,C\.V'[.1"+5[FC>0BZG](#(# M%VUMGUZR%:'N*;7VZC>$."3W;7A,VU"$>^?9'^2T?/F!D^_X#_)_#N;UGK58 MI*MW<=EZG+AX\!9C]7AC-CP)JUM7M&R+=4B')@?%O)V$VN:@P;U0O\Q^PX]A MG%^6!7;GUC]K77@N 4(*M?-(D:2*A:5EDW,,AI5X_6:F.PX0;/[L(;4U[Y5) M^Y#-?G78)SP,8XJZNMJ;?4ZBJYA',F8GHT$P&@THY37XI&L?90JZBU)9L=;W M,6R/=DC]TH>CQW87;$_7@5Q<9I-3=*PV5&8YUWH?X\$Q62#XQ# XS(6UWK>X M TI/([R4LHPZH\;"^^1)MO( M8]BIYM&UNKE])9OIN8-(-U\?_[X3SMYQ-,);L*R6BSCAB$GD%&KK&4<=5!:M M+P\91,+YZS2?7E)6FT?7*M^7A_6GD69)Y8Q(7D\D]4N>2+U@@>)[I[+GB$ZK MO68"[P(Z)$/9"]LV\C";B+-WYU+4;OBH/#!?3;LA8^!Y5=O&&(KE8V;%/(9S M^41RR;NPIX5(^K2DRT-+Z0#S\01GY?UL^JTV!:RO7CJ"O M5A;PTB-'$;EQLB3P1>5Z)K%>:B*0A(Z>A\(,RN96[M+S=TJ[79VST_7P;OH? M%$B_(W77X7PQ4MP(Y)861:1X7:$,Q.* 8%$DP6VP/#[(D'4?-BC#LZV0KR3/ M6L]P,SMR%=C7:3@[.'EVP>I(U0R)4 FRB02K\ "Q6 ,L)I&5E(JGUN?Z'P0U MJ%KIG1G2CRQZHLC;D/#4\8F1X,@L()>$H+*RX(6UP%&Q8%2T9.!Z9<8%ED%M M)_;#ARTGOLW&S%4HYZ>KW_P<+]XBCG(.@F?+ ;GDM8>$A(#:DQ_L?;)H- J] MA7&X_IQ!;=WU8!=VFM=FZ_VRXJGPYO/C>@[@[+9C%XW)CCQ96U( 56_5#F2L M(%KO=-&*.]:\ZY,VBBH<>T#RLV&A$?<05 MREDG2BG &1*'2I+@95%@/!-11F^0M3:R+>**-6G,4XBF./)Y.<_5DD6(3"I( MRJ-RD@G?O(/"[LID;W=0;$V$#97))E+88^217(DJBNKC!E\OE:GM"*6#''-2 M-EOG9.OJW"<<>>S"C[:RZ,/E_#I-X6B\6+75N3U^=LP+@:D "S:!"N05!T_6 M5MLBF>(BQ6BW<$(??O*&PD0EZ%KCNI-PVL@B29>0Z:AFU=+:"D M(0-QE6BK:5Y=BCRKUFV8[\,SV-BEG=[800![B5*CM%5/1NO_=T"@HN Y-/YG2?U*I[Q-(V/:C?=&V6\W*02#!EL66H2(9%CYTK1 M(+A#8QQJ;5LG<'<"/*3L?S.6W=AJWIM(VQ76;@+YXL!,%))BB.2!.4:S) Q9 M .,SH(ZJ,$,&PK9NR;(=TB%M6 ^#=]L)\1$)]V,VLLQPB0KKJ?@:T"8#(&UL[7U9]9]_28-AM^O_XA?Z-_/(L]4,3N_WS?_SR M^Y]6$J\O4'SU[.4ANE.*SO[JCBV>CB_3L MCV;P9_>;>_:QYT:Y&5P"_'/\SUXV7Z\'W?.+T3-&F)Q];?;;P=\IT4HP%D$0 MS4%XH#=,S'%Y_./[K/WZY&(V^_OWY\[_^^NMOW_V@][=F^_Q4GTU__/W3VT6DW?[H>>Q>/I]^Y[GK]1#Q^ FC MZZ_I'[\,NY=?>VGVV<4@Y97H9T,NH&2!\Z_E:<]WQG2!0 ;ARB? 3U._4+PB MQF5/WQWSS;,@INRN>J.*B!>?715O<^FZ-06\\.@*:,SBKQ\?1(C?AU"67L(GD_U?MWK/G4$A>[K];OG]._SK]&5E!&T/ M+WT?)7S&9+F:H>DUX=Z7>F6Q;&ZTVW,^]<:?=JZ&<.[HL_#CM4 M"Q^L". ,@HY29F5]%XEN>J/A[).B M 3&6_FH4$QE7&-<7YWNIXSRE1,4,EM ,(B@)-@J+VR8E."Y+HH]MC6F,X/YX M;EES-IB-;#HO-]I>\J"YK*K/45--C!--(>A?GC6#F 9H4>&OQHO%WT.O0>[_ MXY?1X"K=?MCT1\CJU[WQ"W$"I_/RP[9,& Y&G8^#)EZ%T8?!YS3XU@WI#"=A MQWI&M#'"ECH=G_3A%-'PUWGW6 M69LRIVU_4BD(H*7VD-W:J[CHX6%5Y) MP'O3/G5<*A$)4,[0/R*.X8J',X6%**G4D1F7GY[6[]F4!U'Z)G*MJ.S9*C8% M]MO8LNP0AZL7LQ2$DA*$91Y,&6W(3"0FC$!HE;?T>P!J*GF9*;Y4P[LJI:DE MT47UDFW56XSRSJZ,+@S*4''++% M;]PWBT1F@&BEJ$S'39N7@ *YPBC%E+64L\ MV 3F_JFRFVZ7$Z4UQ;2P8$R#(OWSE\UPO%B^_OZU1%%N!2("+EW<"9!$*A#. M<+#*>_#,*,-=T-;4]O,?!?7DEY2Z8F^!%P77A_QKT\2[.^CGIA<[Q"@EE(E@ MB'.X?Q*%3B].$Z](8KB3:I%=94*L1K-_)E167=.*W%LQ+999/]/!=W"0C-M( M@5N+AJXN3I'U"H(TQ3'*PO,ET>\=]Y<' )T:+^I)?Y$:;.?(<.KAK\Y_37T4 M00\AGL5+E'<9]JC[+S4 MR-*"/A99PVML,7>'WDE"!D>"!Y4#+R?O#(PB!H@.WB6J@JB^ALQC.#4F["3C M19V+:N;FVWY D_A=,QQVLG8WO9':8"?=++(EFT61)APOZ(J$2H5Y534 M5ODJ+$]>[U6$W,+R_F%TD0;OFWYSGY>SS8?0;(WE"2*- 439AAQ+$DS,1DMD M+1=K'1EN,NL?1/3DB5!1X"VL_+>KTBP\TNU?(#-/G>%_<]#5]_ MQPT0W]_MN\'U6#XXNG*DC4+NC<3JK7J")G;NCCC$\*D8$4!-P<@E!P' ?07-/ MHN4A$6]:8> "E!-ASVXB7M2\VE7S[]/HCF&E*)$TFPS$:00C;P">O):W%^>B;O6NNGWM!GU<9(8?T^#SA1ND%V[8#1W/J$_H>4&F M&H=''2W#4Y"9-]0FEVQ:*^5A QTO!?+D=;V[>!=U;FKK_%6W=S5*$:UFPE5 M[DE28.64P#C-P3"&*TPV(67=LM:G4$Y.[]N(>%'S=E?-_Y'*=9$4S[ZA.7*> MWE\5H7S(8XC##U>CBG-)-:,J"YI2%",P1!X(I]*)RY@@[H 4BHPR<5.;# M1@"?/$O:4\>20Y"=S]Y7H)U2>P%TAYGL>8P:)#<)!!JO8%0J!\M1!9&L-ZJV M8;@AQ%,E4!65+*'0]"#MWY[/R0L'\V=;-S,^CYKPYT730P3#U_]]U1U=MWM# MXZ'W[>&FQMK#;>_&AO,B,$\EKC,9G"5IC@F)]'*9@RX)"$P(1*EM<,D1W-C8Q-]/G9C8P,Q'OK&QL(0)M/I97/Y MM>F7R39.:TX^4!FM RL, 4$,KHBXRXZW5\.B$E;4MGD?!'0L=SHV4?0JSNPL M\!92.>8P3?-BUP&UR06/33R@98#V>]&C!<7-NT/5I+XW2H0DJ;#B]L>AF+")L%O)^+N\;/ICTVN:RTX-&L0D!XC: M9Q!66L!=-(*Q,J5@*=.N]JW5!1#[]TXJ*&/; M_DOWM3MRO2DXA9YT\M0"Y1&':C*"\\P E0FM)$3(=&W3]T% IT"!>A)O8>:? MA7!U>=4K7MCX#+D,?) NRC+Y;7I(-P7*-"YZBB-ES;@VBN5@J0D@F4&94*L8 M#;6IL2ZXDZ!)*YIH(;/G4QKA6%.$$JEVUV M@3!2/PMX&9)3($,%&;>0UH,L'"0W3*_2Y+]O^XO1FD]-K_>F&?SE!K$3J)/) M)@LLE1@;.E#@DG8@-7).TKGU]9$.(1Q$ W24^T:9*6K ^%B.RG@H53"X3 M!(DLLC#H@.R_$Q>M9>40=&%.;J4,)R*@ +(?KL(I&Q%9YLA/(' MX%%[6FO!;%F!^#]=[RHM!VQ5%FB]6;#,FG+M DTW9W%'ID1H-+6X;"$HOB'( M'Y)EE7360H[S@]-B[-!U4C369X^+;'3C:9#0(<@>'/D MT;9::2&K^"S^OZO)%8[AEV9%J.@/-QBX_F@RC@[+*4O!*1#*QT5J2P"1.Q0* MB=%1B9YE[3UP8Y"GS:IV==9" O,Z@,=SHA3PC260D?K#<;K^IX22&W9':7H= M?3)_/J70G$\T.EZ1.P0GCPFX[AJ&\T<$@HNOSR53BYDD/$%+LK87U_:8?E)X M;XQH(:W[?HXYY=1S:0A$'42IW:; 2U/J@J= A0N$:'I:*?O[Y-+VLFXAMWM5 M[+Q@0Z ?\A?W_6,S&$M_-!IT_=6H)'Q\:3XBV?NCCG!<96<,2.=XN39+P3E! MRAF=L)&+DK]DVE1P*>52)X-)BHRE&48!:'Y;T"IU7&N:\4VM%2.KZO"%[-]-QI6:\[ MV]NK[M"=GP_2^7@W;/+T&Z_*B4UON$U*[L;OV#T-=[=A54J]O?_*#[-7WAZ, M!$E85EJ#D7).",>K->49WC4OT#)=KWJ?E-A-M&>O9OK\^F^3_)O11:5)4?2> F5K>82/3-[[;WW*VMQ1AA7GZ+@V_-G'LY>S MFO\&+0Y"'01&/([&6G"ELR#Q3 2?)2%Y3I4K:NK?/O,I*VH7\;22N;I%C6YM M3 C, >I'@4B<@S6$E4*91&F'0R>U#VV?1/'T5IVVMA6U?E/I6 D-#$ M1$!H$QYL%!#:1."'#@C=N3C27/5' MP_?-* W?-:Y?BOZ^Z?9=/^ 2B7,X=;^5P;VXOOWY"SY[["T)*F7,*+H<4P)A M4))&>89FE+4\&RTXKQUBW07O48:9-B+-XJV?_2BOE:X =Q%-S<1U,+5TDWP9 MGL-<)-^?5A<,ITHJV1== DX.0;, E]%E0X\@@%,T0L@D&^Y4U*9^;Z)]T>21 M2^;'Q9)--%';@_Y\T0Q&7]+@\O>^[_9Z*=XBG#GX)&N:J*&@1(GE6\[ ">=1 MO8HR@;L^4?8QVWG-=QVB$]6N"FG:DV;MWH3OFO[Y(^@<+7UN,J@4BGE70@W! MHS^7G= Y6DN%7TO7C[[JJ:NZKBS;Z2A[OXVJT\S&TLS"%8-=(-' 4^2@=]X2 M[X(7JF(SV:-H%UW=>*PBW(KQM8=[;JX#Z@=J'KV1CM;J([R-@-N9ZDO 19\S MHTJ7$@4<[92()DHIVBZUD39HKLQZ=\"/2^N;-H^NK_1-Y-J",7^_U;&(+$@O M#60C,@@<'YCL#%C%&-JGG(HH*EOQ1]D\>B.E/-@\>A.)MG!/?UG4O03;1R\' M*79')?EVUEM$T#DO71'>&YR"ZQRY;4 MT@*!EABDZ.:^P,_*SV>C%ZZ';F[Z?)'2Z)4;I0[/3F9'++!L$&_@!,7"(EK$ M45F3!!&^]A*R*<83(U.K*EJYY;1[PO8Q#7(SN"RX/_A>=R*WJJ=M#[ZAC9.W M]8=4Z13N!D*AZ.3*["* LLR$48I?NI>ENT_^C)\.,RY-DP'/*MOHK+35"8Q. MI=9=J5PDN((H52@.J(BI=@W)>N@K91MLCV3B(%KE@\HY@O39%P>>@T\L0/94 M"V>HSJ&E[NT[(M_7:>&!^+HB9V&?ZC[T">1*=T<:3;R5&>7(2J[0>%OR&; MC#/(LE2_=4J"CZ7CAT5GA6H9M%@KW^"XM+YI.*B^TC>1:_OA(&X]XB# >&G7 MIT4&&U2Y\#)$IFJH_.I+TW@A_0R#@"*K27$?[P:#J!,D9YQ(EK M2HEPZI2>$< MR0F<20Q,H#:;Q(DUM6]]U<+^DZ'[5/X1!ET[<[5^V@B[=NC> Z_SP_H9>OT9 M>CT.&?X,O?X,O?X,O?X,O?X,O?X,O?X,O?X,O?X,O?X H=>?$:HG:9+^C%#] MC% =-T.?9(3J?1IGPJ(',2Y\.ZE^^[XI1:I[5S'%;K_4$[X:32N=ONKVKG"( MTW_UN1%MW!/N*@!V$ MNPM=;@ZG_$/'P2KIX<7U\@=,7$;BBB$6@?.,5IH7 @S#798;M-(R2T+&VCY5 MB\,Y5)3ND"2=+[IR)&1IHY_W4F3OW>7LJODZ^%JJS_(8M@/5:CD6,JQ%TATU M>0C&"59Z&&<#R5F/3HJC8 WN;"E0ZG10A(7:#2\.P[3'RKT\5:)MHL"VV@7? M[4#UL>?ZT^ <]8J7\A:@*+J=@K((1D8)D8><@R-2Z%9:*BZ'L_]80EW=+6N> M6$'P+42NIMWUIF"2UYI2I8"6&]/(=0TVV Q*!>M2S"Z[4)D%]P"EO%HGLJBU<^A/)T9 I%*400L)VJ'3(!3/^/%QN6\3X,?"KST' M,_:O]+U4@W[;_Y:F#3>[_?=-_SE>-G#)X$8'\MQNHR@8^ @!/H?WCF-,XT8F1*AQ-2NR;T2S+ZB MOO5T/[_ZU9'SL41EIV.X_O!7/\7WS>A3A/H,FAA)'5DQ?6 G:H2&DE#LQ[<]5UT8:O_QC(N\;N&E!;BF1N /,P M0]CBB^'Y+EQ!+)F#O=;BQZM17/.T^2\ MQU]963N\_!BFT^-%*]IH(Q(YYUR6(HS-U4PPD)] M%NS@I3OK(MZI1[ .V):B=!L!/4RQQ%PZY%PW=%1:Q,MM4FIM_VO5Z/A6 )T&EG@@B>K%86D MT>H0T@:P(C&PTJ&KYYPUL7:C&UR;$7S>!K,W"C M]"KYT>WQ\12%[:.5HM M UNK1N,&W-H"Y@_,N+:5NLA#OCL/OPS&+OCU C*I77;<"W2O,P%!2O<-(1P8 M(_$7QG$1:EG=ROJ41"C<] ;&4&$$;7H-/) #N?5H$W&1YJ&T0 M/X1G_S9*+;W->TZUA-Y"L.;S13,8?4F#R\4K ,('[Y6FZ,B%4I!">W"4$U#% MDE;64N)K+PZKT9P,&2H)O*6UH:.=SH$Y7.><<0 M0[5FI3X13X@7G28?)(<0 XY>\:RKI[QOBO%'YE2K^FRCL.'#>$.XNKSJE9MJ MOPZ:X?!WE)GKE0'\BFIYD7)3*I5^[T@9I:-E 4V$H\V&YII-@D%T%A=61DF0 MU8O'U@#^DZG[U'P;Q;.V'$2I^GX[B$24U%(18)+K$GZ*X&-"*P,-#*JMM$Y4 M+]Y9 _A/^NY3\RV$C^8'<;>HT]WA=)1G:)%Z ]S98J'Z! ZQHZ2<48%D2T5M MEV!=;#])6%E_%0/>=)AI7P<=0&4*BU/3&G98QTK M>3A<2^-8,',%1U>4?-@2P(](K+TI;)%DLH8;NQ[LCM2):I$-$"L"+KN6@RF' M EX)0CS7RL4VG-WUT/V(O&M9AXML4WNJ'O"^E/DM539K5P%8>'!+M_D?'L!1 MWLI7QFI&M ;.BU'EM06GU;B$2:#,(0M)[7#VB=[*%SBC-*[>$"PUI1@,^EE9 M>_ )IQ>/ABA5V^S[P6_E;\+=]F[E;Z+W8[F5OU[EM""YI9K*TI2V) $P!9X; M IH*$D40BN;:D:*C+H-Y(,YL539S$]T=NK+A&E!_ELVLINQ=2AQNH:D#DXMD ME0Q7"KC0% 3^#%;P "QX&@35GE6_['-P4E4IF[DO3FVBH%8RZ]%-0K_<3Z*2 MLW1_FE((Q$$0O+2M( J,#0DDYR11:X(0M6]7+P5RW+45-U+=0J+\KG)OX8!W M+BX]%S \Z_6:OTJV _[])>[TW7$_VC_PRZG!=8^S; AZV> 2;NF!']*C,E'"U9; MQ1.*+ZG:EQ W!ODCL[%=C>ZEP?G=-+!I[.OCH$'7:G3M^K$$*+\6M[5_\]MM M0GN;OV3W,-^. ZL4\IN]LK2[&YW=>>\M 24+1JOLR@Y<&C$8_$F)LN7=;'M M*[16F2.K.WI75,6QA,-6#NG%=;EF-6EHJCC1TB8T2#VNN=+AH292;J MP.G>)M@MK,/WSJY)AZ9=M;3@/JX>/3Y@UA9Y#8@MQ;?6@'>8N%9UU:Y+G1WU MG4,S-E$';5;O;QS MOESQ;@;7-\BFP1//'-<>EUK*'6[OSDIPPGEPA#BK,L']/CYF8S_\BOU[:=6U MT50790L^_CMT/]-%TXMO+[\.FF_I[OT7JT5T67B(@>!H98I@)1? 73"JU+01 MU=.W'X!S.HRH+?M68M6ES6P:S+,UD,"$"!)D8J5,J;?@161@4Y3)6"J5K-UM M? 64TZ-##9E7S*4?KUL?/15IZ/Q%D3;0A;ZRV9_N MWM//Q$='3&EF5PYSF3;@C!#CBVO&>Z5PN:I,C ?@G'30HI8:6KB M0+:;%ZL M :ZE,,6#P X3H*BFQO7HL8,.6C T'P9)(Z7,1HK.D2:E-A!'[SIXD#(Y$F2Q MC&J;FP<@R"-AB,/P8Q/1M\"+3VF8\(&E3L>K4@:_&:^9K[]_1:'-[*- ,PX] M*."V=%!E,8/G&3WIZ+DSP3JB:Y\VKP%K_Z9(144V[6JAC8(IJ8>_.O\U]=/ M]4HIPGB)$D?;:7P]8HKUIBPF]12]J Q$&@>"J/$-90\'N+BH\1'9'#\Z[* MJ6]%!;21"G5[EK+XW%CNR>7+H\38LLE^$ (<%5JJ%*<,UYS 5&S M%(*).:3:[2X?PG-R)*HF_!:\\+NL[E##N?X9O[YVF2 7#[E8_N>AS _\L-XBVUHLB$Z.R!JL2G4[]L$<12 M+Z2UTBI>V]/8&76]+,I'L0Q7@9G&14/(QGL*W$BYIY9NCI/76QC/80Y: M=J#)0M'@(]'Q4^%O]CD%[\K%7E%N6Y8.,,R72YQ6YD"CD:+ZK8DGP]M'SG^. MG+:;J+8%NKY&GZ6Y3FGL+4QCR%2.X]2!^^%@'-DFJRCC1H!F08G=RHIJG9._*?/OY<+O)\^G\T.K@@A=-(E(- ,(B(01W%]9DDER;A' M0'.GT"L2(!<>_0.3H(*L:Z?"KNMM^WG1E$R^%*Y*S.I#SJE.]&,8]!M*WUD9G W'-''JT&X MP \_#KH!QU1ZU#;]\1J, POEM(MH33T1!FCI32M<3& ,;N!,&DC<\U1[$#\/NXZ!!"U>) MMA[09"!OA\.K%-_VIZ85,5)S$CSD4L1:9711:A=,J_J '[R M>6_J;^'RTQW#YZ7[VAVYW@1ER94>?$OQ33-X!U;NAOA,J/".5V\)M!:R'XYA+2AL9<.,"O%P9'VWE)];AO5],^[P MD29AON&7!J?+W=^7/C/OF]'_3:-/*33G_;'-X5)4RD4/D7N4G=][33_O0SLYSPX.%T6YX0YWCEQ\Z3)/_HPNDB#+Q>N/QLXH=D:9S1$8S(( M78[RO V@<\HRZZ!HJMUB\V"#_3EWCI)6B_/)[BL=?_FG4\.P>HK^6F]K*VU_ M\Z%62N5?BX134QU_^I!O:3:)-Q0"WFVC)Z)%\R6BT9(#B& -F,P#VNR&2DTM M%ZGVZ5?E(=1+\J\#;)+_&R.N*S1ST'QR2DK <:=!JNB9C$Q:7CMGJY6!["OY M_Y"\7GT3X%",.)9; 0_5ZL"MR&1MW?A2&&ZE@8*1)H*-6IC$?'"Q-L./NC+2 MP;BR01FE372V]^HXZX#[649I8S5N5"9G&QWLOXP2TU%QP2%+QD H@JL\+7U# MB)9)"E1NJ&VS/*TR2NWQ8Q/1MU+'=3CZD$NKEUD*96\ .+HJMQLHJ2%MI03NFC <7#"EM%7'$1F7P1%%B/)$Y M5N\ =UP7H8_%K=E>+X=(;-SJPNP:8_IY*7JS2]&;T&0OEZ*WT/%3N12M:9(Z MV0R.VM([1LA2\L"!IDII(H41JGK3^R?#V\TN11\;;3=1;=N7HN_?G>0ZB$P3 M>/12RMU) <:AI\N,05#YXN(E.K2&"IF! ML^+3,D?!NX26D=((Q%,ITES4X >[Y+H-"2K(NO8U*K1 B+93\'94Q MPT594NC1,)#&"%$WI0=RU_UDR,U=='";9]E53\2 MSXG2)$H*$?Z1(UIH-!*$Q$VFCH4<6DOT.KF2+-4LCBV4T\*-FN4RZOAH(R&, M@??"@3!H 3F.0Y61A1A,,#SLQSW:/VN.*KEC=^VLM$]KIMC-;O$47N^0.[?L M,;LGQ3T*KE*VV\N>&PX_Y/%[;M5/J8O,) F)^M*,C.12AIJ#$VABXF>2R=IW M@I8"J5A>MCSWQ?7X+=/ZD9EX1;.")-!+$CHFL %'Z[5SI0([E;9VW[$'X.PK M"VQW?3]0U74G&1\Z(RNF;N==.G>]U_U1=W0]:=9LF+$B1"AXRS*HIO"W\^;;-K.D!DG1\_0,K"Y7+ZR68(B3 M0)FUUF1EV7QCV%5Q@"5/WY\EOIN@FYI2JAW=?>GZ^-N9ZR>T)X$(R%:584D- M+I<*?3HP%[,L76K74M?=ISY%-6TME8JS:C@8=3Z5P,!X?:"*6!?1K2=9%HX( MW*1#"I#0'Y?!NVS7JT>*3[UCS>+?;M?$>R\\%6ME>RE6C)K>@)B%Y-: L4FN MPCI*K3\9'[=5=A#^O/IVD%P;[,%!<82B!XGZFR)IGU M"FH=6H$K#)7Z^MM$8)7U-JWW-@7"M>7,90^V+.4B$%W:/@G0403F=51>^0J: MN_?2_>V$.XF]J2&S-JJ87OEA-W;=X+HD6$\WB#$SA35<>YH@.?Q#.!RC54I" M5)&IWSA)5@3F7CK"OU-LK(W<(IIR$?\I>!ZP]=N)-VNP["MG("'T5W MF R_2NJ<)TD[NF@C=^]QI 0=L&@"KH[1X6Q17(*WW$+D9ESRT\KZ53(/Q)9' M\NH.1I9-5% [D#'Q_<9W>,[.!VD<@+ZYHT$#;I@&C,H"-\#BJ#M!2MTBDT*T M2:CUJONO?L7Y1".-_2P)VGV>_']=8[/*E F?90LL"*<-&112# MYK4;#.YWA"?!XN/E1.TM\WT:?1PT(:4X?(.273Y%G4I*6J% DG'[Z^#!2.]X=CM( .7J.^_VY M&Z5I+?UL#,>5F((LU4T%80D<9P&DP*6;XD^*K]G=9J/W/GD>M"CFBC[Y/-1I M<6ZO7>8"#44WMO$BKDF>HLFG)-,*;4F%@#95^J&JIK>GURV$53'O MU:R#[_!-,[BI>"V"M4QJ!T1$'*HL<4 FD&DL2J&R5XZ[396YZF6GI-XJ FVA MA/B#5O;[]-?X5R@"[5@,08"V0I2H/P,7RT&JB%P:$K1+U6W-M9 ]98ZTJ(,6 MJH+?(7-I<=;%IXYMV4\II.ZW%#_T[X0,.CA>F@VZ8C2ZTI,6&>UB5N"58,QY MQT)H,7SV.,"3X$UK&JE89'M^(2Q-%KK#$GA\D]*L35BPB47J&$2" 53$9R- M#GB,*G#JC*1BTUUEV8N>LM:K"W)EU>BJ*?@%Y6CLZ+I^Z8TXPO4M]0/:K^_= M8%*\9)?4_ T>7R%E?]O![)C*/U']S='>'1AGCF%Z[^S[03^MK5\?R%I1]2'3O&?+;OOFN'PWE!>7+]WI75/&>_LXTG.;;3< M>RT[CZ!5;C1[T5$+Q\7WD4Y13D_% MUH'64G;! [ .DU;0ED8?),[NZM@W8PRG@C@-1)V=*8^D%!P#43;00BO5>6.Z['=S=W)=]])HM$!MBZ<^I#$^5.?(PHOU[3M64MU""D0$34![ET!0*<$8D2$KHE3,*:;Y CRUUY$'T.V/+_LRFUO6 MT%XNQ+]*?E3#[5[ZG-W]Z\?A5;H37U[TMC]$3V1,; A!Y9\=L35OA6_ LJNZ\C]QTZ-=9*5UB1"U,A$$4OJ?L0A,H'<]\9J MZVH;'DM@[.L>? T=S\_]7:5Z+.[Q_7%,<2VB M%RF:=LEQR+3YG?7Z($\VEF\+]N9]1'<*!ZV#JR7_=16FPSBON^KL00KL*/!] M$H(HIF*I))>X5J57 0>C6 0TAZ-2)KE@:R>X[I<(C_BF^^+!)G*NG:KWMM]O MOJ%#-7S7N%EU4552@U*Y<$Y+YHGW&8Q%QT=Z*A(N>HZ2]=+:ESQ\_]YC';$W M%656^\[^/3QONH/AJ)SVHA\TQ>9%B%G%4MNKG/<&J\ Z@C]I'YBDD@2RW@'0 M(R\Z.=WN*,M6Y^KGA!9AO \N,!XE%Q&DU1&$5!&,U %\CDSPG#,E:G-%+WG3 MR6EZ5VG6SJ;]D@:7=U:7(!)/WCNPJ:1Q&F[ !4&0>ED*FTQ@Y%%/?%*"/(4;C8P;/RW4I:A1X9@5XXCDW24(3RW MB.-47*J=9=Q""Y-Y3+/H]!JH6CL27(;H4*>!NVKL$0KL(.Y6COR6HV.)6%Q^ M@$J)OD,B'DP,!JP.0A%%0HJU0XK[),&C!WU[XL &4F[C/GFYE)%B 36KM2%% MU*3:@PZ::EP%J9$/U97[B+:BTS57 M!H=;QJ3BI06#+6VXT')A64.007"1A$ERK=YWQUZ)J]8VOKWT*MIK"W6DUH!Q M@A6X-A'^J@I<6TBNQ0I4-\#<4U2V0Z)T7#C$8;SCNZR:#T]25;C3*1QY(=C4VP7LO?8+*VUIF M+5BJT_LH?Y0LB_[HP^!3*28P:9CG599!6K"):!"E7:QG7.&RPCFW4C Z?[.S M5D> 13!/W=JI*^T6^JLL!3;KK[D&M);"%P_ .DP,HY("UZ'%#M+?USIQ4\1- M64EQ(22!IW)[38)5N!I:07%E5 5N[R?&(W&-_?-B$Z&W>@0U13=K+&9- M1HLC9&"!DM)8C"$DQB%DPX3SQC&[WM7-!UYRL&N;NVMBY=G3#F)L(>UX;N-+ M@\L.S=[+&"U"$*%<-T=S)U(.-(>4,O):L=H1K$44ASZK>M=&VN"FTFU=WV_0 M89B6CO'>11.X@!Q5!N$D 1?0^!'.^+&#:6B[:8"W6$Y1]UM*NO:"/G<@>U7$ M,BGY&"[&E28,(TI2,$XA(.9MN6[#(6?)-.$I";->X\Z'W_.T%5Q;D+63"1:( MU^UU1]=W:@5$&Z,0G()0I:.%YP6C>V9;07W:)-JGGEH(%]P7Q5W(GT?X1YS. M G>>.L8Y38P*$*FAY;ZF V-XO:(QI !0V4!2Y(*6E+OVF7-:FRGR)E* MFJA896S)+CLC]D?7C6_[_]'MQTXF-#MK&;C$RV5P'U 6V8#C5O% I>%BO>JQ MC[WI:2N]OC!K%P1;!>ZZ$''L(&>=+)-EO>(,QZT,#EEZ!M$326GP(NIM?) E MKSIA76\GSI6%P;94]FLWZ%U_2E\GQ:UOC>:R02GF@O+.(0DIVLTRI+2+'SM8B9 M_3'%4R!V?&"4T,0AA3&F;,%S+2&[*%WT*OGJB\02&*>A_EWENT3G.P<@5\<0BGHED"8/: M24F:G:C<=KUXZ7J]%%]*)+FZJRL:B/YR)N>-@7J"W.)JG<+9BY%]\9U!^-B@)UDE4U*:P@A>1!: MH&F6*/Y!G!5*.[=?4G _7X$/=ETR^VUK1'1W?XYPX%&.N\>/>*C2T(H%*) MQX67W?+3:H>2M!2L4V6QQK[=TKT>QLOLP_>7)K00DN ML\%M+^&Z"*($ ISD)3/%Z1P%TWR^_4/],>ZUW&,E?2]8'KN+]UB*/BX,Y<7U MS95\&_'_F,*%.IC2-S3ZTI&9099)1)_0!K>Y;;KW*LH]A.FU+8WOQMU L;1'?#-WL7MT:^/9E M<\QA.QK#8P>-/DJ7"NK8APDRC]-S9[3%Z4)B\>Y4-.!5M+C;IN"#B-RZVOW; M#D.7S8V1/;)E$RVT48#-]=)P&G'Z.&CB51C'(V<;(V6!ALQ!.B)Q8\05U49A M@*!(2$XB6%V[F]*#@([ )-E)?TOZ$-<1?@M6R5D89TH-)TV1RRX[NW'M D=^G_-8&9 #Z=E*'.6-#E0 M-E(0I'26RX2 9&@J,U7:**^5DO1HZ:GY-Y^ T5E!I)7K^I6JTA_R/4PW]6$? M!U6QRM]*(/NO^;>KAIJVQ%MY",TI^%RZ^?'@K2YUN^): M":C'I?,'R@3N1>6;2+5VZ8(9E+/IGI)8S#PG!DI:7+V(QM'1G( DIC,5,HLU M[PG-/7B_=>8JR;JI)*C:O4IF6%[,;$(CB1&2 Q\720JE%K#1 DILC'+AB%XW M]^7^@T]&:=L(JJV9]G)6=I(SX2A'D[!<1"]E2L#18A(Z*F)6QGD6-U+:RQ-3 MVC:"JEWUXV9,LZ*501#.E :92UT*)AAX(W%DDA>U.+3EU[N#-??@DU':-H*J M:+K>P_)ZBH5)ER-)!+CG K'8TLG$.^"94VXY93ZOF3%V_\$GH[1M!%6Q+,8] M+&]F);%)<"9;#S@"AH,JY6&CD>"$2-R8K)3<;'E\#Y/:5F;LFC#WGZ6XCG$I9NU.6G%IW4$%UCIQJ@<."U(*8;4RG'^<4- GCTA!5LFBQ4I'1@-7CVRY4 XDY^VQ2"*IVY<[=$.\K M,[@ZIQ;.O_:GN&/));Y=$5YUAZ-!UU^--3=.?,M&4>#6&U4XE7HSG44?WSYWD PO9:DBY'$V;B$.S7@,-Y8:O"KA)/[2K#%/XVWGS[?GTB1/% M3_]RJ_/;]^W?AZLG_V8GX;60@G/??1C.[7AG'H?KPJB3O:,4W53PSDD0*7&P M4C)(6DH9-25)U4[D6P_9_LG0NLG:@DI:(,[[IA^N!@.4Q 17QS,NG"8N>!O&=VYMV"G$"<1C+?] MV/W6C5>N-_S0[UT_'II9NOZ7QTV4'N*MKN>?O5&\90NX.P9+\"6=LU[OSBM^ MNT>AC<>_\H&[A-K_(WWK]M\WR*K1K'.OL[A5:4W!C//+2CZAHSY#23(C1(O MUSPB67SV_J;E8]*_%T;?40@K3X=73*WIQ^4/[X;IG__R_P%02P,$% @ M)8*N6L888K$YY@ KN<( !4 !C9'AS+3(P,C4P,S,Q7VQA8BYX;6S4O6MS MX\:R(/A]?D7MF8C9XPB5C4?AY9E[-]0OAV+:+46W?#PW'!N,>D'"/12I T!R MZ_[ZK0) $A1)H+)8@+P?[)8HH/)1S*S,K'S\K__G^\,2/VWVT\X_=O_\^__[;_]K_\+X__S[NMG]&'-GQ[DJD;O2TEK M*="?17V/ZGN)?E^7_RR>*;I9TCI?EP\8_WOSVOOUXTM9W-W7*/""://8YJ_E MS[Z7Q"0(!"9>$F+"2(PI"T,LI?08];Q YO[%W<]!GD2I'^28"B_ )(P(3GWU M+(E\C\HXRM.X7719K/[YL_X?HY5$BKQ5U?SZ;W^[K^O'GW_ZZ<\___SQ.RN7 M/Z[+NY\"SPM_VCS]M^[Q[P?/_QDV3_M9EOW4_'7[:%4<>U MZ__T?W[]_(W? MRP>*BU55TQ77 *KBYZKY\/.:T[KA^BA>Z.03^C>\>0SKC[ ?X-#_\7LE_O;O M_PVAEAWE>BF_RASI?W_[>G429/:3?N*GE;S3>WLCRV(MOM6TK#]3)I<*^V:U M^N51_MO?JN+A<2DWG]V7,C^^[+(L]U;56&8:2S_66/[W4\!^.@-]1_C6A[@Z M0*XA]XLK'(=X^L49NK=*0\CI$>Z!.1OE]@OU<27F^NYN09V-^O08N_I:K&NZ MG.%KL0/30WFI/_BL?NK Z(4&E&D#IU/=/53E]UJNA&RUY=[2J!#_]C?UT^*I MPG>4/BY^^_;+6AV5*WW^O5^7C^NR4>#5Y4I=4_\Q-?* M"'NL\=ZVY>7ZP1F+ZK6S[U^[H0KUOZ%U*62IS/,C;#B0I>M'J6&L[CY+91-^ M+B@KELWJ-_1%8U%]>)*7K*I+RNN%X$%"6$HQX7&DK.J,8<9%B"./R(@Q99DG M%**>(, GUDM;5%"#"U C@;AHIHJFX@U,!WV6527E!7K%G@NT0>CE M5KQ"2Z MH86X0)^*BM,E^@])2_0KK?4W]07]L<'3H5ZR88\CA00"/:LFLF'*:Q5DM8:= M[KD4__E4UE+XHF*%UELQIUN4?X:IPDDV MU4QEOO5&P53KJQW:XHL4PJC%&/U=X_R#_K-&&VWP1NP%_?VW=L]^Z.GF'?J3 MZ-PI^>M(-T^"XJPZ?$HFO];UD\*R.Q-^D>N[DC[>%_RR5 ?0Y[4ZB(IG*2Z5 M'5+O%$*0LYS0S%.><:#,T5CXRA)-$RQX3A(ORO(H%1!+U SLQ#;H#@G48*&L M+(4';A!!+28FK3NQ*OA6 M*_5:U85VIGY5/'HJ91,%^N/#^H$6*T/A?\V+8>D^@T*8^%H39RRP)T@9DDCU M2D\:U6\[27R]VBRB=H*$C2R=^K/=J7NU>E8;L"Y?]'WKU4H=]UPY_HL\)BSS MI8=SFF284!E@YB<,!V$6AG[LY5%&(*?L<3 3BY*&I7V;QQ8:[-@\P1BS8_)\ MH!V\$DX3)JCD^\$D%E/NF%"7Y]L(T];ADF>::%^ M7\I/Z_(;7-UL@V$D8S:N6BD:C4[OVND";?'%"C;6&*O/=EBVV@>]VH +Q!I4D<+5 M89#")>M<126HV%@(HX'*T]]%&M8Z)'>R1_-)/"0]&&9.XL@X"G=[!RN-(NTG"1@(Q^G'[ [KO3-F_[OX[^>BF=E)J_J MZJM4*Q=.8]-SOC_[H["51JS:8U MJ10]!"_0#G?4/J*W\=6'^V^T1*$-5>CO&[I^N$!;TM"&-J2)0RUU[@R4M]D5 M1W;/S,C/:DZ]S<:\MM+>" M;STSGF1[//7S9))*^\D_B3 KA\PS[B<[T$TF$ M:4I"[ 7<(WX09*G/89E^%EA,GLCW*O-VFU4+]?'@_#7U_R;E&=0WA*4K[U*4 M)W4DK3GDS,F$8S"S VK-HD/GU'XIN.-Z6U*M#[^]/+#U6+'M8.%6F#FONL^]>.^JS5-,"U@2 [(Y4DF/1RP1)W?@3JZF1<'V*=Y0B/BQ;%9F <"=.JTK18%M,4!]9! ?V@T M4(,','O3B)]FY[5K+L%$TP&#P.J7!M76/S9&]X#0@7I1[.!(TQ(2+"&><1^J$Y41R M'BI]8E2!"(0[M=KH$$'K'/50:<(0>\AT=BKD0A3 W&$%,B'+@#KDK\$MP,WR M-%RSNW3NI6!FPGW* .&=9]+VF'*[A39#EL] MF!(WX.VH)3JSB(N=-32Z\"P":DK>1B*-GX>+H)+NQTM>/]'E\D4'H/Y1;6OM M=F$W0U$T66OR^^Z'1[FJ6MM]@TL364//U8^].E9S&37BT+BLNF8.\)K)E"_* M0'$9<(12;B701@!F$VP(N7T!![T'%_0OZ]47N08>KGLO32RZ"A;^\O$:<'KN MDS0N@M;4P&1M0XCC\_ H]E;RLK_2;()QE("^!!Q_ /Y5_ZKL5M]CD:].RDNQ M?JRE^+2D=Z9?^A.O3_SUUU"1!HO]OE6%.@S,I>(4]>/RX8!PF*2,T(S^T. = MB<\(<5:"=&K-V41JA*B^<(T]:N&]_4E+4;U?KBMYN_YU]5A\*"K>!B),?;>3 M*TSMN36 40-9IT[=%LKRJ=?HUR\W5T@CH?[P5)J68XTPP\"/<\('H!=GR(+1 MB!7,J1NEU,ZE.[WL? [=*&E[[MSXT[9UTXW%2+_K]EB%[J"[2 @)PBRF.* B MPR2*(YSY48X#DO@>B07W: *KF7X-8F)Q[5R36D-$CPHDM&+Z@"7#,NF&4)@\ M=C0VP+I4$ 7/97GT*5J?M+@JNL[S@DN=J/:HC9?+ ME?CT5*Z*6BG/SC,AN>X-E$@<)P'#A+ ,TUSH@I[,EUF4FLJ?&;B)9;&%WV08 M-P@T4?I\@P+@7F.<;\-"ZIX;,('M&/%QCQ%;Z#:%@N,< 5SP..6,W;W.N1R" M7>H8$SQXES.^RGQ7.,84[=WM>LXW0-(K)7I:[+^;#8P@-B^,0QYS>)+*V7Y2[E^>FRZ\'^[ MIZ6\7R_5NU_KU>5#;>JLCBPS\;&KH:,&/&K@HQX"Z*M4TKU"EP_KIY5AI:T) M8PPDV1U/@%)\/CM@4FQ&J)T$CZP]G_2:$;DGN8:O6.9LWJ_+^E:6#[J)4=<5 M=-L>(TQ2+V3*DTV432W2'&,99)H*491"I=XO>U#=$+;*Z-K1# M=\^*W2%\@38HHQ9GG5C7Q_H"-7@CC3CZ0Z,.3/YVO*UF2NKM-@MXJ_4F^P16 MB].PTY$J=8S4F.69[3)!0R]#EP!L8H3(B$6]7!-H";H-9N2(7LD ".J!AGH)F.=,H4 M8#QTRX,=7S;0IYVW,T:KZR$[)^&]S62=,?)/CM,9?=&R1\QZU2SS>U'?;YJE M;M6";%==[.*W.P M_:#1RBQ [1O[5]MZHNOZ7I9?%"N?RE+?5C7S-A9I0D02*B4?A?K&/"(4*P^? M818PPJ6,LL '6HL&4">W%WNFSX>^4*_M!]":<-5,*3OF M%$RU]B.!VH!LP*,=_&Z4CMNI 8;4.APA, 9Q]GD"ABPX-ES ]%6KDH4S4[E/ MKS!QK$[7 #C+Z![@P_@5G1L6P*38@'JGN=WC--K62;QYAO6\$ MO1D;(D7U22'WK5[S?UX_-E.@/WZ7)2\J9?%'GI][PI,XEIF/B60>SJ(\Q^HH M)R1.,R\.">S('H4Y^8&]P0#I/4&R@UOI,&VE$4+K%B/843W.2[.#VBE_@-?O M>XQI@*,..MJ"=W=(&U/JZ(@>AS?K 6U,_NOCV?Q%R^J/VX<[G:OS&9#\=?2] MZ;ZI#;C-]6<-GUYE>@Y39ES4F%B1+ S192=*Q]6:3HP%B M^E(T])AM)/[A05_T*%F(:L1@' M6>C'U/.8[\>07(HA8!.+8 NZM/3W8M5]_ ,T2C[ 0=,@MQN^ M0&/4#4N^M2QI 5^@'FB7@>5Q IW%A0= S1S6'2?Z,"IK\(Y%!=+7;[_I\,O7 M;Y>;K+\DBT/*/(HERR),(I_A3/ 0*T(]G\D\""+/N.+H8/FI\YP4O+;=O8(( M*)\Y9,.P@)Y/'$PD]^BRJ0\Z)!!0#W06H7;U/V8;":OR.4G&8%7/X5OS5?&< MQ'BO:N?T4V=FY&PG(RU(E,C8HR$.HX!CXLL$LR@-U?F?TX!+D:>P _\0Q-26 M]C;#9-FV4.?@P6)'V&)VBI]'+-#&?MTJ?G" FGW>S $IKA-E=@#>)C/F@,"3 MJ3"'3YXYSF^;MY4QZ4=Q0'%&F#*S*0TPRS.*DSA.4Y&J/V;<:I#?3!/$]F;; MC6=Q&7+%3.C.HA4F[NZR:I/&0I]Q-?25H8IIB0E.(T\B/LIS2)4IGF20ZJ%3@):6KG5L/5 M5PX=9,4>U,"VRMP_S2]#;]8%%X"NK"T#X)[L&'&NW-B3<.;U8+X]RT,7G/Y-&9%G OM7('?RJ3>(#422SD8_#> MT& >('_8?AYZTQZC-ADP& @N9!HE'/3\4(.?[-*B)U<$.,.I#MG(!!OAEI@[<< &F RP9 M !;Z<=H<2?H H%G%>YS@US)M\,99S0)TMM*Q H9M\,@342IXXN$H2S),I!_C MU MC'$5,4N$+R6)BT05@#.[4UUY=[4^34G>\Q,@Z &?*63/YGX!?,&7@B%6V M)?.FA+NMA1^%^A9%[J:L.%&];OSZ%)6HG3-,L]1G,N0XDD)/2$UBG 5!CG,9 MQ&GH4Y$PD(U@ G1B5?)!YE+!$9O24)>5H: 0@FM> .'!G6:KB,)$(IG*99\ MBW@"A FPTL6SH@I6+XO?OBV$Y^7$#PD.DMS#A J=_.81'(4I89&,?65C M&"7(;)><6*1_6Q6Z:N9;36O3>&"/W&%IM2,")HN_?;FZ_?@!?;N]O/WXS4$N MR '* VFAW<.M+'6_[,2HM]0\22$'J&\300[_8E]BNU*,>_DB>Q?164QRC^68 MJN--^<+JL&.>.O98$L4R2SSA)< "G6-@(-\@JYJ<_K#(+0)ZZ.;C>@7OG'>4 M4V9GV[G4P^1G"ZUI"S^)=3M$D,/:UP,0LQ>[GB+R6'7KR6EP MN3: 1X9W5N?2#;RG:@ANX4UT,S5$D*O;J*,PYKV!&B+SX-9I\&&88 I9+#ZN M:F5;WM+O5T(M5.0%;^Y;OCPU.;9!%/D!XQX.**>8Y"S&:48#Y22&<9B+)/>) MT=7S**2)+<@6MAXP@O:AHQ:\F9".\VM84)UR 2:LU@PP%EICX@:,5;5&*[/J MAYVHCJ\\B[@:$[@16?,7+"^(MV.J/TA67ZW4(=TDJE>[*TX_B#T_%@%.%ALSX."JV/Q-.UUQJ92/*)9/=?$LOVW; M+'VA#_+#6C=178B8RUQ0AB5)/4QBZ>,TR!G.@R3Q_32,6 JD!@#.+&>Z(-' M._C*3J5ZSG.+ _ B:92'9EK")6=@.N),IH 5@BFECM3!*+A9E8$I\:]5@?%[ M=HK@U_5*OOS:M%[[]+02FV*Z0$8B\Y,01XG.,0V%Q*EVQ07C.8M2(FEL5#0Y M#&9BH6^ HK:O',HU6)B G^"-F5B?3S%,F%MB6X"H@3C!^(AAHAS)[0D@LTKK M,*&O973D:=M\SZ7ZZ]TOHW>W8_OL>&"LW1<".R9TW(MV'*8GFNSB&4R3M=V>/""?WL'%V9"*?", MXY3[GNY.HV=6^PDFJ8C2C"9!8A9UM8(^L6YO<:ET$^#Z7J)'619K 1P8 >.F MF;Z9C$JT4LXSV\2:BHOJQK M67U>TY5NL/&I6-$55SKOJ^2R>-:1P'> Q"8L:GX/,Q.IH!Q!IB%8U!6?QVC!F-!,'8@,F_5O_FMDN)JM2V^O.3*6&M" M9(LD3$4F(CT31X289!G%3%".8QYF(2,TB?,0,AW''#1(2<%'W>BD)ZXP04\* M 6T;[$9NT2T.,)T%8*N9AIJ&63!]I/FDD4 ;+!![07__K67:#[W*\LMQKH&5 M%9P!CE03 /"LB@C.D-=JQV(%R] ;U5=O37-"99Q5"EC97-.WVDR*Z]5MJ91> M.SMP$:8R33U*<4!#Y91Y'L',#QGV,B+B,/(\EH&:JX"@3VP/:1%ZW#0X+SL$ M@-$@$#,-HT%3L0@8#:+M!7O7670/%;3!!:F?>]@X# ;9,,%5, @$>]Y@D U; M#H)!5HM,;=)L8QA^F$@>[A3'@"QV$L$Y9YD9NHD3V#["TA1_&CW[[=EDTG]I== M#D)W?Y.&PL]B&N"$*LN'>+[$+"8Q#E*>^IQZTG0XG'VFQ MF2.^:1$0#VH8>MCSZ=*L MG4#_L9DLO*N0;N[<6,1]7S*) Q'KJK9<5X,'J3H&1<1EF-$@%:!C< C:Q$+: M@NS5@%M=80[SR_"H=,4%F-""&0 _.4T(KWZO)W7 M*&,:ZMQV' >Y.J/#,,9,"HG#.$E8D'A>1$$Y[X[QF]J6UNAAIO%#-_2EG4^\ MFU5\L3D%19/R^)X^%C5=:EPWP^[,IDC.LI-F"NH-]P?H"31;\V[JK0$KPHD8 MZ$AUNL9N5F4[$6M?J^>IP)S=$&3C%V0Q%2'S4NSQ),4DX:E249F'(S^7U)=I M2E*0WW0(8F*UVG;%H%U7#"N/Z0A;S!3<><3"=-1^]P_GCM)I4MSW_7@3%^DT M@0,=/\YSCOK3BG^5]?U:[ K<#2<,GWA]8IG:FV/=@C:?*WR*XF&1KE6A:+)A* MU+%W)Q:G#F3?I%0JG+T@!;]X+L0379J+UU':QV7K7+)A@F5 <=<9PY&,#9%G M)6!'%YQ-NH;(Z8O6X'.6A0S/M%CJ=3ZM2YVDL[LCTQ'\W6\+3\A0,BIP$NCQ M)UX88L8]AI79&$4L$8%/0(-03 %/+*R?:%&B?] EM)&Q,=_,3,LIN &3X>9: MK-^T8HL2SM@@(,Q=ZC>EB0SZ(% M)JDM%)LAWWOT .9[V])E-]I[9)M@,[V/H3XXSGOOA?DF>1_#4$H,?$C@5,_X#C.6!B)/*%I M9G1]9P9NZON[MC%CB\$FL;Q% O6P@#:H'&3@L*9PSQ:8^CB7(Q8=*TT(/:-M MY>#R,_>N-"'UL(&ET5OVM3=5-Q+EIER+)U[K^/+F*,]#/Y$BQ:'/$TPB+\.9 M+V(<$MW//0M]&1NYVD;0)A;UKS8#28;98V:\.R,:)L@=Q O4P6QNJ[J;!_1. MKOB];M4U1:J;";T."V-.PYJ]$&:4[&.%+^,OV6;A*'UQ555/4GQ0-O[JKKU# MZC2(#FLO6)PJ!YW'./ #@4F:"$Q]Z6$9YT$6YID?BPS8:VD4*.0;;U7(HJ%3 MM66Z5(RWQUBEL4)/C^K'4G9CC_/N4ZH#DA7Z>Z$>:[#\ 9J\,\IF0SWAE'4P M9=' 1BUPU$)'+?C-X7^!&A1-Z ;XY C8,43]J>=9NG 23;*A!M MLOYL<6D L?TP->0UR_*I2E[G'ZNZ>- CJQ9,^C05/,=")LIC933#:4@E3B-. M:<2(#$-0PNG^\A.;K;^U9]46'+ \:I\39@>1/7TP,7U-VCRSM8]3YZH.:G_Q M>6N?CA)V4.]T_"G;*9=5K9O1;+KU+4@0ITQ$ H=>XBE18SY.>1IAC^0L] ,2 MY%X$:0+S&@!(V."M7F[U*\IH5$";LV+7Z:6KP@"*WP%_S 3P'*J!P>(MJ1_' M"+281WF<"F>S)U\M/_./$'^G=DT9+29ZV7&-E/A=,P,J,0>;TS9 MH'"!F,S7I40ZB?3/Q@E6OZ+WI11%C3XK_&::.WN2(1,.GCV$^>:39T^RP63T M[.F7[73'?G.X;F@&#Z*8"EV,10,?$QX&F/+$QR$CG/HD\D-8,=8Q(),'=K=] M$.TFBQQEC)DR.)=<:$C7G%*+"?.G27$V3OX(B)EGQY\F\G!0_,"S%KF_XC]O MUSK1__*A-D[X[;TSL10I4$KO-,4N]1KU"Q(V92V I-\^J>.Q(ELJ8<)SFL Q M^F#YO4>(L4OJ[2\T7R;O$?3WTG>/_1TN#+T+3%WC\BS+%Z!HG%YAC"4Y]E=W>EO*.U1+N& M_C?J>:W[FV1>'7:\Y/SIX6FIGA+Z.ESFRD/2SI)RG="-^G;K[_:-6K92W_O' M=5FWO7\U9?2U"#29UH#C$;P/!F?HE%L /&C?@OL.\QC.8J?=40^&-I\]8,N( M/:/!>A';#,9O#W2Y?/=4%2M950L9A%%$D@1[33N@. UQ&O <<^'[22 C%@NC MQELGUI]8FW49>0U(M($)S4C<9\BP/G% )DQCP"BTR# \2L<9*87[Z\V<0WB4 MF,.DP>./V86.KE;/LO6=_D'+0NO;JY7Z)JO/OBH-KMWCC]]KK;757SZNGAZZ M]KT+CW,9QM3#8>K'F&0LP93KH28B%@$)A(A@HY0L\9A80'=87: -7FB#&-*8 M7703.G;8H1YZP'"5[6:81;1F8#%,.4S'77"([$S>.(JBV6(Q:Z#M3%:]CL6= MNQS<67J__B:7DBO#\]>F/:@$Q":.O3M#5(*N=#O9%C#J((,C%$?I'O<_SB49 M>@EF1RW(!Q@BRMYBU81TQ"V@:>YID$9?TJS] MDAX -O[";IJWK7,D=/EZL2D,:!*\@'UT!_AG9EB?RPZ[GKH=4,V#IH1_6QSQ M?I '\-:ZX]2Y:K [ &G>-KOC)!\TVS5XQ:(!#F5/2UI^+JJZB86"^TJ=7&#B MT[.#BS3@"V@4_335X]:J$X)ADMBGM>MVXS:_V8@NN^XW)U>=KP7.&&%[?7!& M'[8[0W7^G$[4*E9WP4F&1$X MS4*.@]@7>1#GH1?ED,"7.>B)158CHL[/+2:(MJC 3E, )\T.UVGX Y/PAC4] M)"Y0A\8$.9=P>AV=O@# LQ[&<(:\/ILM5K"LRSW>]G77'.W=R^Z1SF)HNN9] MWM;?A4+Z// 3G'"68))X2KW$>D2X#+PTS9.,I 14EW\V2A.KG7Z[[/WLDQV. MNJ/]L-P!>1>R,9ZZJC,]':-XJ M9&<,/*A2=K>RY<2"7S]>=@DT<>2SC 5*5_K*NB4T\W&6>1+G7IZD1&UBD(:@ M80/;I:>^_%> @-W]=U2;J1T[6F#J0\.8H-7((>JNNMGO%IZW$?T!00<]Y ^? ML&C8UX0?5E5=-@W8/GXOZD]2WDBU>BMUKIN+[[=YRI#F#P>=YV(OS =."UK'2"^'X< MV.9UR[+\):VJZ_QWJIV;^KK\6MS=UU^>],K7^:[%\GNZ7.KQX=US5?=@M2"I MQWPN$QQ)J=P3D@L]N93@)&(\DA$)8PKJGGXF/E/G*FGLM)C]V<)5K$:E!GR! M5@V.37.VW5QLWJ"IHPO="]7VC3/ZMIV[9V;.U8P[ =."VTWX?;<)7]M-^++= MA-YP\O?;3?B]MPDME@Y[";AAEZLN V=B,V__ 3>L.^A,X&A9R_D3.@HOQ>>" MLF+9 MKT."%"1''@XSSFD7)-LPAGGO)4U MK(6/ECL$@$,G3C(KI9D7Y:G L0BH\NBC'&=$>?3,(X*&))$)9Y"V3$Y89=V? M:3TUN\Q4NQ,F $W7CN8>S DN%T<)0=LC)%[,%%C] 5+9;>J"U$L MG^KBN3>EX^-WOGP24GQ2B&L#]JGNAD-^I.6J6-U5RI-NXNBMG[+(B1_DE%"< M4Q8K6]*+<4IR'Y,TC?*$1"(,07-UG6 U=2)1HQ=:,Q#)#C5$=6>SNL ;[.UM M13<[8ZA6YN8W4 7UT.O;AQL$D18PU$.Q\:<[)'5$K;TB'&TJ M=:+OGF2L,Y MP6E>;>B2C0>:T^GBMFVPFF[K7Z7NY]/V3L[7Y8-.Q+QFR^*N@:W;]>D2B'8: MI#)TU:=53KG^VZMLPS1+ F5?*7V;,#WN*$IP%B<,^RP1>1[3/ T#6 RPP[MT&MG9#>5.=T\3>U,]G"$-NARNV5FBO@--P*FDK>3'K:H(LMMF20Q M=6)^.NM-YA:[F=N:3<+:PXYHTX"QN,"^6JW6S[1^JCZOZ>I345;U;:GPN-^, M9B$BSV3$*4ZI8)@(&>$LISX.HT#I:Q'%/#=J^6 ";&(5NX6.-'B$48,!ZE MW->.\O_].7C,UWJ.J&OLJK+0FM3_8?+E=C_H/?D(HA2+PK# M%'M^1#')%%TCDX0;[WKS$SO\=0,"\0 M5_]'<@>Z:6E>;A%K_TYK5"M=P>1=L5IUUH_^H(4-O#TZ:[,D)6E,DP!'>1Q@ MDI(B)G/$J";K,^KL1?$VX45)WX'^K+5+VH9?Z?H@]EBIY M\HB/&6,QYGE"E#CE40*<9##7]MB//3#>H#GWP?":=2[N B]9&Y;J_Z,>/.VH M;?G9/J*9_.K#_AL.+UA=,,K5]>I9N,Q[N>J";0=7JTX6MH#"P#F&R#S33R7V+;8-KZ:.U2?\>VZ+:9@1=-$P7U:;MC M7WL[YOIR8W)NNJJ;F S/>^Y MY +O;!MPVTP1],<&I,/H_B!)KJY3C\*8]WITB,R#Z\[!A^TD\I?U6OQ9+-5W M+,T\CWDQ3D3F8T)T#$&F'">,)%Z2IZDG"4P(-TM/+G<;0#"!VU)N)F,VU,#$ M:I0,L!"]QMF1W&R7G5547A/S6CH._FYQ#:3<(ZG>T)[2!_DLE^M';:EU]U1= M(-_SA(Q]&F OUNW-B.#*-1$Q#DCF141*)CRC$5>F "?V*S88-#$#L<-!>0P- M$H K$!/N&5P*.>8)]/*[8X>"CGK@40??YFK(A"^ ZR''_+&[(AKCDZ-+(@"M M@Q=%)NO,=UD$H&KOP@CRGITYT*2.:R>@E/>Z__&SO%KQ]8/4W6R^R/HZOZ7? MV^GPZO-2*I?B@VS_W9JLL6 DSL( 9U023(+,PRQ/!$XYR;.89G$JC?JPND-I M8@W:IMOS/H9HJ9 #.@ .6&]FR/ACCN.K"T'",UJI[ECX&L+S^'*\/+P3XH?ZY7]23!4&W?BA"M#@W6;MB95:A])N2)M0MD^]1J_1VHCB!C/X=$M8^&E;J8[_]F;[KRI'GKY(O^\ MY'7QW*3"'\VH;#,H"RFV^9=-=+=U/*(D8TF4XHSH7CUAY&/&\P S)GBH;&H: M9T:= "?&UHB_[%UN?O4?#7V$1 M."OL9EV M088WWU18L&)Z5@_&."8$/U]H9'H>[D549@!G<<#?%.H0^4978JG]G2Y"2#.9 M")$2S(-(8N()@EGL,^P%C#"2I,P3YG'G8Q"F/E0U2-3!1/^#/CS^3^7H _3I M4:X8'&?GT@H[B(Z3:1,V/DHO0/.?2[>=S@9N,TS##I$TJ!N/OCB?5AO">T\? M#3X(GY9U4Z[%$U<.QTITJ2#5A[6NMEKP) _"W$\PTY-K2:*L_2SDRN3/0NF1 MC+.,I*;3LDY"F5JCM'";FZL.,/JCA0P8FW6:1\.ZQ1GE0/UB0S1H?M8H46?, MSSJ]]FSSLT;)Z\_/&G_XS'S9>LW_>?VH->RFTC#,/8_( ">_L>H6^XHI(F%LX&'U@U 8">=T\RA8>*EW!>8*IXHK95[F(:IAR7S M?$[].*-,P))4G+#'*FME$@:9W0 Y(1JFMD:385LTIFCJ/4:LZUS5 SAODVMZ MBMR3N:(G7[!3<1_D8REYT1JJ(?=#RG."16'F9S:4@D3S3X4=V)W#'='DK:W]*S"=8RH MU_)T]!D[$=)=A)LFPA^*BB_7>GINM;WL]X3/XS0DF!,_Q"1G,-NV[)/> FU_MPMIE)GBMF &\)K?D %D\3 AV)ZR"H6<77 MA.C7XFSTCN4 0%E54EX_-M/E5W>?=:;"-OBXF>WYX4E^D=_KVS_E\EG^NE[5 M]Y4R@WF6I)Q@CWC*9??S%*;@$TQCM!AIZ[G#"35([5V1U&O$I#*Z"W&!_D/2$EVO'*1GNN*)JT&"MFC, M.U;P3&8=#!D\=SW+D8/\7HJGI;S.S^S US1P6@A*E"%#(YR'E"E+)N8X#=7_ M9"@"%NLJ7QF!Q@\Z16_J.$F'K,[\<=0,LVN[!IU+Z'93S33JVVT53,\>VYF7 MB]W&?+SYIEO:\Z0<63L+8@^&%TT"Q[ QUF$*[ M29]=Y#1("2PVRJ.Z?JJKFJZ$TBB+/*)$2I]@GOM*TO/$PVF2 M25!G^QZ=Z^WF%@WZ]]C)5FZL A@V J8<>; M;RUO6MBH!]R=V!M2Z4CTQZ#-*OZ&I+]6 ::O6222*>MA^?)U,[9T-R:1WLD% MY9Y0_W$L..68R)CA3.02>TD<$I]$<1@;!9'& $TL^ UDM!W-BG(=#K$:P3K$ MK&$)=\D"F&BWU&^A[LT9=4<](.G,$1?LC]^5+2#*C8 MRTPS>=[.4.EF?'49#(F7LC#)O.Q%Q,IPHS0F(!BVWNK3ZR+ M-M/*8-;%/OUFMH0U53#ULAGFYSXKXR@!CHR"_;5G-0&.DO7ZP#_^$$QXA"P6 MFSC4Q^_\7B?2?*$/5G(59DQ9^1%-3.3G%("I MPZ$=2+2!B310,X$ZR9-AF7)!*4RL@$0:"]<8)0,UG.K55K34#SN).KG@+$(U M1LY&KD:?LTU@ZL\9?T>KHOJF?'4JKE?_H&6AXR9?:2W]1<2#()2ISK_0@3/& M8TP#F>(D##/NA\P+/5"+4E/ $XMB QA5#62T7J'G#C8J%7!H[I,A*\U.ORD8 M!)-@C0':H7"!6F9]VS)K@P?Z.L0LBZPJ&.7.,JX,P,^XPP$W5K\F#R;$X9O)/E,0I<=;#<6WO>SI7'R#KH6'GT(=M; MJ[94\_=CI9KOGQZ:J]=G^9[6_/ZWQTOQG^H9+=>WZZXX\WUC&%RM/E9U\:#D M^CK7XU:J=I3435EPN?!9'/#,TWVV]2"-(%8_19S@+.*<^7'JYQDH37D&G"<6 M^1:!;7,#V>$A4+W# SUJ1!!=-L*@_[;6$;B1%@I%\]ZZ[!HF@&_GIO\VF&FH MO]@>P_2>087]C@34T("?'M&."KW7VX&!+25Z9S>T-+>-O6]*0X[+.\;9>._L MKG)ZC&>^\YQM"P[O3N<#;=.F9TFKZCKOHCW7Y=?B[K[N?KN5YZO,K;(C%U2#.G9[W5B^I*M?5X^KG5H2+O5N\RV[EI#>;=29H$N3Z)" M*3Q*,.5!BFF:9ID44<0\4+;)(+2I==T&-A(*.-1N'>*2J<7IB':HK;@ANXE^ M]?*3W5\/&9'HS"0;@C6S,65 ]J$99/*2A0'S1=8WY9I+*2J=E]HK$*X^?I,Z8Z!28Q33AE.X]3C@2]CGANU>S:&.+%PZQ3)QPZ'-M^^ MZA?J([G! W!T&S'2P)QQS1Z8_&O.W.QQIFUAT&& /D[%&8!AXYI#=L;-^9R" MF3<0J@=-'*.%YC-S('3MF3J@%\^M@?JXJI6_^7LA>B6BUZM?Y/JNI(_W!;_4 M+:@_KU=WGY4S*MHA/E>KJY4HG@OQ1)>?UJ4L[E;O=9_?4BGN=R_MCR_;R?8+ MROPP#Y1JI4G(,$F#"+-($)P)GON!S&4D=/582).$&IHF*IPPN*&*71Z9W<_+V]61%"MS)5[G]& MO003*E.:O@N%Q]Y?=8."!UVN#UJ>DWPNM.;B.]DMKIP1W%%UL MW8CF)&RIND#;;T]'V/8IUW=O;[,EK@Z^>9&?]^A[DXTY./S>!@O;6LFU4I?U MRXT2UOIR)3[^ZZEH9JLI1W*1AG[&$X_C*-&'51(&.$U]BKU$TB"-H@=LPXN..$5\&&&%1/SI.H;/BT0%0 M,U>.CA-]6#9J\(YE8[(NB4)Y&@M*B<<#I?VDY!XFC'*<<2%PG/LB2[PP"=,, M(LB]M2>6V[9QYW('#]A+K,<$,^&T) TFBY\-Z($W\3K$W%5?KM[*\[;:.B3I MH'O6D4?L!.:+PJD;R][X[HO_ M!C"Q"]K$VI9-K(TV\&"B<\ .,_DYATB@$+V.);H3I5-$.)*G@^5G%:I3Q+V6 MK)//6:=^*U.W+MBRN>/NDB7"-*!41#%./,*4H,5Z((X7XLP/69[%B1>'1B,L M!J%,GDJRA=ED58"3H(_PQ4S8SJ86)G&O"9TD9V2 (G?INT=@S)UP>YK,(RFR M P];MP][6*^:.]4;6EZ7WVJ=]-_TR-UT*5M(W_=H+D(<"CT$//<9SA+E,TOMJETVFK,E&)W+<=&(<[=>LR4!4=:D!F_>O;<[(_?']7WI6MN M>/7PJ//W"][E[.\NP>T&9YLM/O&1_GK4LX[3;]'2ES>O$;,>E6W(RV&M,0L; M83H$S$'TA].+_;-9XF)6MB'$MQJ6#6/(P+1LX$)V)LM764GUTOWE2GR0SW*Y M;@)E']LQ+@L_IR1)N8\)D[K_=$HPU8U/$^6D*U^=^6$$-%8&X4UNIFR@-W%: ML8,/,TB&>69FBCCC TR![#&@!QA]'!G< [8\C AT9',,PYK5VC B^[6=8?;2 MN=F8]O>.;=_RG/J9SY2K0JGT,(G\1/-LKZ/:WN;\KU M/?RFQ)0G2[\K-NSK.XNE0?UW%QK;J?>!4E&@YSD.,O3!!.1,9Q*]6L: MAW[&DDAA"LQA@B,QN=^SA8WH%OC/P)M+.&L-[S8G91=,Y'5YFD8&;;#1-L/? M-4*H6/V =FS<(37)#$)[GKBZ3(4C,.]UJS6##BYD[5>RTU$G9I*];V^%%WZ: MA*&,,IR3B.M&6P0S2266H9=E"?%XFH"FG ^#F_H2MX6"'M?E)D*YU&CL-;[" MO1E]S5^!.14C##730N[8!-,X0^,).^#NU(H9D8Y4R BP6=6%&>&O58/A6Q9F MOLZ_:SR(^_52O?*U7ET^U,:&_M&W)Y;D-F6P!Q5]E?53J3SL!UUO!3#]C]-N M8/R?33;0_+>D&&;Z#Q)E9_P?7W(^\W^0I#T'8/C)LW,PVH$Q5U7U),4BYCG/ MB.=C)CC1TU#>*D7B&*D#:1%''[=O*K_KT7/Y M3(NECJ9]6I??Z%)>+I?K/W7/5/7[^U**HM:#^WY7#\MUGB]HF,LL"6(]K4U@ MXD<2,\9"936SE,:4!;$OH(WF;9&96@4T )NQC5!+^2P6FRF#N1@'TQBOVG)= MH"UB.%^76*.F/ML@A]1GJ&.SQN\";3!TVZ[^7#XY;&%OCW/9=JQ5O=G MKPF?4-/V/?BP?J#%:J%<^S1C/,%)PB)EFR@#)8W#$.=^E/@^3_,X-FIW^GKA MJ[]JE[?;W59\+5A@LL1H!#JW!4=G08U=^W1*-%'2I#&W[$MNZUE M]55R63QK:_:74EFMBYC3//!(A*4O?$PR+U8"S0*<$!H$W(OS6( Z3QP# A)D MV\KUO%@IF[Q0/]G5X![AC9G@GDLQ3& _M62N[M .Y 5B4KFG\K2WZK)@]S2U MSHIVCX"8N7#W-)&'Q;L#SUJ'JQ^?U(FV[5&Q'?8;BM37U;OISV4 .$K=TKZ% M.$EE[R!5[H+41Z',':0>(O5(D'KP<8NN[]_DOWZ7RV7WM8NY$(2G$B=>$"GS M.*&8QNK7T.,!CWT91M)\1LW>TA,+9=7" O0BWR=\6-[.(P?+I:585Z\K84-^ME MP0M9Z0;IEV+]6$OQ:4GO3,-0HPM-+-<=?+3)6]Y@T1RY3=-W\:1>1QU&YL&I M<0Z-AZF<,@>F)8!\07]H=!R%K8S)M@I@C:\^6RC+F-!^4,O\)P*RCFQWS MS]749U=HS3LPVC$S#V9-NU[?,M1!J_M%3-,@X'F,O9 13 *:89;D#.><)UGF M^9RD,2BNH1:=.HBA0 C%9I2P[ $$']@#&((=7BPH8>KJ\B"7G+>,$*/B(.8 M0?]OCOMEMV'F0$01]T*)(QH*3+(DQ"P/&4X329,D%DRDH#NU87 3"\;Q]L^. M.C]#PO+NN 3KY'NSPWT&?H_3Q&8'P'VU^@!/1BL-WS+LJN&3GYMTUX_/)7* MJVP;\;?IL,=G]?E!&$3*6\!RU-'3X_JQ^VHEH,A+=9IZQ:;8*9/IF4M3,>8M+8X8RR*PWX7UDQS MU=@"CL"\'2RL&730JL)^)?O<_*M559=-!/MSL9)7M7RH%C*.@X@%.?9IXF.2 ML@QG&0TP)20741#&-/>A:?='X$RLN)KL\!U8](<&C!K(P#8]I_ADIG8<4 _3 M+5:$6Z6Z#Y#E,(O]&)39$]0'2#V6>S[TN&74LY>SWF0L*./G\YJN>ID+F]KH M(,A8E$F*/2$8)AZG.!5^@'T_3!,N943]>!/7- QI&@.W"%I:Q2LW" &SA !< M- PYNN6,PXRB@<(7YR7H<"ZX"@V: YXW^ =FR$%X#[X"_);T"WV00ID3_*DN MGN5UGA=<';06R?JC"TU\V#?PT18!M,' )FM_G"GC%Z-.^0'3!N.LF""1WYA> MJQO1\=5GNQ$U)K1_(VK^T@3M?C>IAT(&:>+GF"4\UB/5"69!P'!*.0^B*&/* MY(<8]08P)Y;Y&=K^=KQ3W.&>SQ-,@I1B(CS%19^GVC\2OFZ4&OG WCDZ*K]%]B> !:#NRJ[GOK0QF,NG^GY=%O\E MQ4+D/(MY1I0B#96+Y9,$LS"-L?"\("-1$"4"U)E@ -;4]Z!'>H\@NH7NL/U( MCWUF"L$14V"*X%@;$K0#/&$GDD/JINI&TH/TMAU)#DD>[4IRY!4[\6Y[ 38U MKE9I_1$Q%+,.%6_= >NH+I1T)^L+BRWJ% M?Z7E/V6M7=I>.P^8MIEE-\W4UE]MCV#Z[]7V-,'DS0UX_=*+*^LXDFZJJO_8 M_-"CXP+M*&D>V-""&F+0WUMR?G#LB;[%#CC2T;.@/*NRGW,37I\:L\*V.W[> MT:JHKO-+SG7?07W;IY.E7]K_[U1.&(5)FC,/>T1FRM!D#-/0#W$@LCCVLL0G M#.AZF@&>W/MLT-!I S?JH4T!39>\7ZQX\;B4S9_?KU>50DU89!\;LMA,J[MG M&TPO;_FUP^"B+7IX07]T_TZB3&&$.U*'AD!G56@P1KQ62<"W+0H9]^\=OSQI M%_@ZORWIBM_+:N$G 54J@^$TU[?Z.8UP*M,()Y$?:KS32C9:]8T_ 5RX[Z];TL=6Y<*>_EJBJ>Y=6*KQ^D M-L->-_3KM?K;=J[Z(FN%"_V^R(0@F4@D)E*'\&7.<,8B@@7-$R^)?98*4'&" M*\0FUI(]#TQW%47:NMKKCUDI_%!UORYKK)9_4!IU:S0KE2KK1I_2[\"V_:YV MSXN]@"GIZ_=7%\BH4ZEV,EK/^(<+1'/=9&*':&,9WP[L!GQL@&/6N1HP MX JM>4<1.&;FP= "U^O;Z>3?97%W7RO76+E\]$YN-/Z'8OFD/FT#M-=/=56K M;ZLR<1ND"BI<#^M@6Z,V;J=4)^P[3HEM4= M)AN3;C,ELD(]-)2^;1%TIRPM&>%()T*ASZKZ+%GS6L/9+@-/>OMU]5A\*"I^ M6SQ(H3M *\G\!UU"FH(,+#&QSOGUR\T5TJ"5!GDJ)6HP:#,\^V4D"IDG0,K; M$$N&-85#;L T H013IM_&%!KE>0VM.YLZ6T&Q/43VTP>M[,T/J]7=]HKT9;S MK5KB\GM1+>* 9W$44!S)0!D1(DEQQGT/@PI1C0":67PT2WVIW M2P.]0!HL^D,#!A:E'&60V:E^+MDP0;6A&'P^#Y'DZ! ^"F+6DW:(R-?'Z>"S M9U3'MC.=JO8R;1%'N9?P,,72\QDF 8]PRD2,::P^35B6DB"'])X]! $21]O. MLU4/[/_=U+S7+Q9%J_N\24F2ABR76$1QBDD8AKHG1H9YQB*6)@G7J1^/;8E? M3R^,+G55PMGL"7U"2:RK"M,XQD1*JGYB!%/*:>C+ MV(^3K&//QY5AF9(+YFR &;/F8V./.N.+F0H_CU*8 F_7OT"7=5T6[*G-TZG7 MZ(:Z+2(Z39/+4N)] /.7"A\E\&@I\/$G;3J7G]B$TO"V_0::CO]#%>\F[!B6N?.)A,E; M0]]UODE!':GH-Z$/T@CU'#KMKNM@] );HYXB9[@]ZL%;,[9(/87Q?IO4DT_9 M9B,UI]>W>RGKSYJENH&8]B@23RD#$878CY2W11(OPVE,$RP"(IBR^E(:@5H; MG0(TL<[HP*(&+MH MG*\3K+*[.1VP0"@/E'RV#8444KSTW;(PLVZ*AHF;+"X M0!LNN?;.QFAVEC1T LS,:4+#Q!XF!HT\[V@(D/8"N^%L)/2C2'I$.R0Y)BS, MG0!TY!7+$(Q_2)7LJ1+W>%3/!2KHFI@/1SA,$\8)J$ZN=-$!IB)A 0RH4K 0;6^9F"G-OM;)"[078M&VYIX M#Q&@\VW&3$.'W#F+@(?\ACN_]+BSC\.FE-6AQPXBVI47;P9T7L\>Q(@#;Q_V MMOMTNDUVR(UN%ZRLCUZ@YW;=AGD6A'JY\/T8,U\(W2S=QXPE&0XE#3SJ\813 M4"7;F?A,K&P:[)JYAPH7$+,\I3I2RRV(66M)MS)&R?#6;294T<3+(V M=+F7J:,$N&MOWEM[[F[FAV0=:5Y^Y"'+4,#N!D"W%VO+;BK*FQD@;<@JS-(\ M9%F".4^58,4DQ#2*"&:A1TB0$4%$!@H#C(*:O0<$RQF? -T./WRDW@-X^ MC!%PQ]Z8-E=._3C >1UZ8P8<.//F;UH*ODZ%;CK"]Q-=>WWCW[WL'NEZQCYEB2J( 9PD1493R(/!AX4+7&$ZL5G:U! [; M7[G?)D.U]);,!VJQ\X<@')2!3-&I:S*6NE*>SO&;5]=.Q=X#U3P9(,N6[JNZ M: J_BN=>T=['[WSY)*3XI!C5CKMNT+S./])29V!6-[)L$/F\&]B0"1D&1."8 M!#K5E/B8*9L/)U(FDOJ9C#-07KPKQ";6VWTT>]6U:(,HTM\UU$-5ZXD-LCK/ MJ%4:9TR&<+:#9KK]+?8%IM)GW1)XFWK'_'/5Q-X56O.VN'?,S(,&^*[7MR]$ MNNT**19Q[C/?]P@.A3YM.,Q+D$U3OT%PW- MJEI=BO^L;LKRVS-_7VTBG89%MB=>GSJBJR^@M ^R[9U0Z8YT:W4RR?*YX!+I M:+AY:>TI)@P+D"/Z@4%?(](=QH0-J+0JI3VUYFQEM"-$]4MHQQZ%B9V0Q>)# MEX7_J:@X7;;IX9_49]6"Y)&?*6\ 1R(G6!UI0>KE &C;2P*>Q=L&T3V 6F^/P9O8SF$U#AC9\,;A%?KE<;L=0O:>UO%N7 MQ3:]Q] L'UICZH#?6N EQ5N;XX,*S MV>0FY/4--VE\T2.<;HGK+U\B\2-<8)-ZB^=)&ITK=Y[ M UM_*==5M9DOG'(ET*ERP84NHVC[PW"J[_!$EL8\C],<5% Q#&[JD[D#CLHM M=.!-VC"S#._'G+$ >$!OJ._/7V8R7Y=RWC',1O2[NK4:!C;O7901X06V^#B.G<=YK,3+P&-SQ?'^OIB2&")]@B+@!C5;^Y]"ZL[F?!L3UO4^3QRW-TJJ2 M=77)='DQKQ?$]Y@@/,,TE"DF-%9F:"0(]KTDI)&?>"3,8 /&]@% OIU6@\1: M<$!KOA%>:SLHTHV3.XS=ZPSP?178@6-&4LB[@ZZ2,==?)EC#.:$IQE/A?JM/=2 MLYK UPO/E?6A8<'3/!K2AS7-.03!](H9+5;9&WW$STK8:!::/4>CC_ZQM(R] MO]M9O_LCZZY6ZKLHJ_HKK>7'/)=<7_;FQGA MDW$0*,.O1TQN,$%?&^9MD4$WX\P#F_%63'!DY<-@S^H$6+'EM8]@MXAMYYF' M![560949Q%!&!21+XRC=71[1,/1GHN0&A ':?.0)EZI#9 M%B9ZU$"AK6>.\<5,09Q-+3!$MB.T@3=)%YH!BIQUHCD&8^9N- -D'G:D&7K8 MKE3AW2JO])G1GI M$\2H1RBU+E\VQ5PT39DT+JH3\ -[:[EPM7J?QIUX:9SC+B<3$"T.<)7F \YS$ M"?,]0K+4>%:- <")-<.E$#^C+K];N=SXGPKTUO4&Q)--6&<06W?,D#.]Z$UW MEZN.+U?3\ 40;7?,'[N8^_E\@D7A 40/QN)-UIDO(@^@:B\N#WG/\DK^U01W M#;$WQ?U!M[[]+]VUIJK?T:JH%I'T,A9F$8[2+-0M,PEF-(^PSWR>"9Y'62X@ M?0B@"(!T)+Q7P18@H-;:FI=F884I.62A-'>@+] 6-9RO2ZR14Y^9<1">0&#) M!E8]7[?8GC1C"G9Y5\KKZ_YQZGOYX!G M[H8:@3&8>]B1+8N.#$&R7@JFQZJR7OQ*OQJE MGE2JWW82>;C>+')VDHR-])Q^P-W9OI6^!0M(DD74PZ&GBTU307 6I#GV B\) M QY%>>S#0MZVK/U@,()3]$=K#<_+P_(-CD9#U^"7Z2T@\+_09=/;5_;JGIZ>&RJ68M< M28!4%%E<;<)6G?B ;)%!6VS0#AVTP\?F[A/(O/%[ENGX!E,"4)9-Q8T+^-L5SA33I3OWLYOD S)EM226D$ G/B*0>0LQ SCP:8AC2- MF0SC( ^ Q9]' 4WN^6T[<#RV<.V:C[SBCJ'>.YMBH,K:D-H!G+"/R'&2'/07D3?J&'"?T5+^0$T^?)9E*#]RLEP77XKXI2_9T77;.8DPS*G6W>0^G+ VQ M$%&<^"DCF82-]3@):FI#9PL8;2";E#=#^062US.Y8"6S4 ;8"NX ;6Z%]QB@ MMQ#@ 8)/"/'0&W:"_+6-+NZ^C@&+ QZ*&&>!GV,2\A#3- QQZ&6>SSV?!3*! M':ZO04Q^K&X _@R3T0-6F$GF.>3!Y'$#:1(A/$6&(]$[6'Y6@3M%W&LQ._F< MB[+-WU9TDP3QH:@:>5XP2>(H2V,8R)B6!93 ..)=75X83&.!5ACC.>*F4F6$R87*SD M':VEN)V;EUG+RP/PQBS]+*OJYWT^:B9/Q4PSI>?T>P;3@@=II3WHZ,,85\ZL M6AV@=))*U6/PWK Z=8#\X8K4H121),-+?4V+1F?$46 M(-O=GCR[Q'8 F; ,]N.$#":KOWIEOKSTX[CNI:"?>,1R&(FD55/2<_7P6*Z? MFQ;5FQ;X&8USPG*"I<=C3"*28!H1#V=AK'M7!3(./-#(D=.P)M8'6\BHZ($& MCAH9X)39Z>Z(?ICRV)'>ASI!9;H!=:X&@PQ FG?\QSC)!T,^#%ZQD^3V3GAW M4: S2M9/]5?E_!3+EP]2#WHL5DTF.2U*?7 M,_:]5H[N%H8WQNLN<-IA;WJZTL>5^$!KNA:L)N!@N M'KU\:")L:: D-=QU]3#F9AG4-]'HW.!M@BA!J.+?LU9'RO4HH5:O%RZ1F>PQ9G39(/# MS.[4&6PZ=+3.6U#L]=!3F.B#0:IO:HXP"FC$19Y MF.FZV5P0T&BG8T F5CL-2*RM+Z5SMD!A:NCH94A]S%,_498[H9B%48:# M.)%,AEP$U*AWYMZJ4XN:#II7=:&-UE^5SGHJVZF!D#3P?2X,RY@U;4"ALB,+ M5!)Z0,89Y:"[M68K!3U OU\&>OA'B[:6=\A7?X)_8[^L5U^?EM+W M6.1?EN5M^;"JQ:-_ML@EK(\S;_S MIQDQ+@5.> "3"S/RT1\:"T=EA:-46HG3Z55G$[!1POHB-_ZPG6-SM>+K!ZD' ME;9U*SIE]DEY59U[M5Y5[YH!I^USM_2[+G2I2ZI@J+TN7ZYJ^5 IY+BN=EXO M%:2[74O',&>) Z0MJ$M79-(*]UI[N%1KJJV\'QWL+][ MV3W2M<6\_).6HOFTNJJJ)RFN5C>R+-9BD7J1E"PC.*&9TOEQR# +I'+4// QT'HI9@$(L(TC!,L/9^Q@";<$[E3>\L"R8D510.XF;*)_F@! FO- M)]D81Z;2Q.R&J2,(I]V;.F>P8BZ+QP;%OY;A[/3*TQM"H&NT08(';=QW- (4RL]F&@#5(]:%<5S(9Z4 ML>/N)FZM2DPX!](=& 34X M V241Z:&1Z6N0C'@*4EH[F%?M[0B29KCC&84IR(0+!$\H68#&:=#<>KKG YA M?7QU@?XO:]U)I<53A_M[>.JG/FBBU%^^R!HU5_X*Y?958$#"_6X:AB/>=(^ MUS>][3G5WW>#[^;6?V^W-CCO=FG2TM3I>.LJNN$>P7EC&Y,Q^""R,1TD>%RC M"4[S6OG)RY<;6HA_5._7W^12&JPJO5V_DUKZ+G/UM=7E\)_4GB[B,.4A]R),DR#&Q/,SG.EX1LH\ M+Q,)DY08==6QA#^QM-W>RU)2#1#0D\Z"B\,".0-O8$)K4GE>KQ&3S6E[@1JT MVBX5&K%I>0GH 3@M3^WZ!$[%6UA307O.##8>M%AVON:$]C3O-3 \8QD+E:V\ MJ'Q=/E!%7G.%?-T,RJINWEUONO<1/^"Y%Q%,&?,QR7F":1Q)''M^Z*9'_W\:I@H;\M) 3SOE M#TPM]QG3INI>;QBCP?]@TV!UG"< ?>N4-W;J]7P>P12I,G-\E?G4I#%% M>UK1_"W+V3)"%'I%NM3J]6KUGCX6-5UN>CTG_Q]U[]K<.(ZL#?X51NSNNST1 MQ@E>P-LYGURNRW&WRX+P7?E(\%J$R^]^6IE;3)$ET^UG.0%.&VNR.D++Y?Z/'8S<7R M I7QK*A.2^ 'I;(*ZO2O.%MH9U"@;H!G^$&[[?)F1:KJ3G[;K-D?GW22#C$6@P3*]5*:^*]$TZ^MJ3?6"!+1^B,SV MQ8L%!]YT6,@,GWL_)).K>?>]-.:=LQ;J_-G_O[N#3*_80',5)'>?V'\%&68(GBB(?,9S1.LPPV? W*PN1'_NY0 MP0-V8"H-AM9,VZ>$"WB;(GYZ9[&Z:@8ROGK_;/\[28J'+1B.+ B8_*S&Q1:< M8[MCO8Z=2?JMH,O52O"O@HGEBTX/JK:#@WT929E%1$<7,X0ITYGL>8P$B<,X M$831D$)G'"52N>9/HFR:0]RY?$V!U5W#.'KU8J4G5\#FX><0\],I1U@ M/G MTX3.JVU*KL,)(\-2N9H;)GY=/OS8W,G?*G%= M56)SW[$T1(HI63O,W9D16R@AUXE+[- MQ824DW=>F=I/ -6/=T49C[A;2@%3UVUZLKM"\!ZVK0+IW75F"Y_W,-\-FO?] M&CXVZX,Z8&]>ZR:#A.GZAO=D0[:'.N4ZBX!)B0*I@V^2"Y1)KN<))U&,&2-) M;%3$/49H8L5H2'L=VGJ,%!D] \+ &E8BEQ _65+Z4'#M$Q$LQJH-;CP;$.U M3,3K#M8R>MZZE7.I][GWHOGO;:';C&HR>MK>S7.U63^*.M^"4*WW@5LL@+,W\WPD1 M@FG^EA'OERTK?VO*61MNZE&>WI:?3OJMTZ['-E"XZV0,HCYW=V(;:'HZ#ELM M _=]OXIJ0S9U"/[]6E1?UINOXM_/RU)L.\N ZP_-5YS\M+UCQ..*$Z]8;Y1% MJ7G9]2HR=ZT!2(U[WM. !#,D77PT$W6%_-^> M#2S>MLRR(=4/_7\]^?>%K/3UW'7!>V?%^3&.H:;DY[8>M3-0X&9-^:PF?DU$/YX/*[ MRNY$'*?%)D*" A!CA2!UC5(3VX@=8:_2E(]' %@W_A_ SLQPN$$$9BCV8'QKP#AH ML._.*(S+YL@(#!":5>G'!3Y6+2WP$,\>((:U\G+Q@%NVH62@.9[G!;A@ MH&?/HK--]CPO4'?$Y\!3%E6OMT6Q?B&;Y^KSFA3_J$?+;+;UB"(,>42R&,78 M]Q$.:(#R6"2(2Y))PN(L"HR2V,<(3:Q6.\J>)NUM:0-*-X= &E8TEZ)#@W*] M4MM4K@Z)#ZA9=02#7;4J]$L JTTU$&VP*G7H_?GJ40VD.*A$-7G>:=OGNI^> MVN/# %.?HS#4*7=1G*!<,JY39D6.HY0+'W3 'R(V];7"^<[&-7DWG9X;V,S\ M=%=@P(R5/0ZNFCL?"#AM8^>&U%^AJ?.!T(8-G0_?L>PONPT:WLF/RX(4;$E6 M]^NJ+GB]IE5]K;!@+(SS2'D?"9-*N8F?(AKD&$41DS$E,@DQ;!:- =&)U7W' M@OZ&[YCPMEPH[[CE SIRQ@1/,_UWC1+,#C@ "-Y)%2"QJ]ZH)B3G[78* .&D M?RGD79?#KA8B#620Y%*=]C.I3OM9@F@L.**4$9$G,DMX *O7ZR<$^<);5>75 M49&>69\N)D]=-#MJ0E7OFX.YG^;3C$JN8_Q--N74HZ%*:S:CS\ MM&T6$1>/Q5(N6;W:IV>B#PE"M*='Y<$'&#.*DIAK!4X"1/5T=Y%G/%42^XDT MZGEH1F[R.,,!<>]:.4_U=QF:+#0(F9DVNP,"&G4X@\$$[63,9'26XS-(;.:4 M'A/!3S-XC-ZRO5M;,R%X/8[\&]&]S-6_/(ER\ZHGKFVN"ZZO]Y[T-V$1TCCW MXRA&?EU20_6021Y0Y#/!6,H8SJ,0=MEF3'ORV[>&DV9 0$6:<0)/+3?U!;78 ML@*]?S/'U\Q"3(0:S%P< O:M!6S+R)57L]+<['\8!<[BW@X,@;.+/'/*,]_L M@2$YO>J#+V&=HKQ^%-_)GZV+^$X40BYUY"##(F5"690D15A$&!&FK SC69[$ M>9:',?!8<(;2Y.<"A=S+LM(;J5R7WK+FPMN0/Z$%]>>0,G4F+I8>ZD74@BJ* M6^_?^Z4E>CYOP29I>$@L=\G!O53F3@(>$K4GV7?P<$AK17*K)77IT]R75%?4L>&.\W1]0P^C\)3L"[ ,6#MV?BRMMA]K7& MK.'$NQ_'#'XW !;?U4V!.>%Y[PW @)S<(L!7L&U;^Z_G-D_P^_I,]\SVCK)- M7!.<)7$:9(C&RE? 6'!U#HDH(C(,PR0)B _KV@'F8&I;HXC4W9F52ZWL^:/R M(NJD0._G-A=@6:A?%(5H.@#493I<:]^R?1/:!A?Z"9@9I4EQA=FF#BMZ=,!1 M]UQOWSWW:IMAX#S9T!H-9XUUH?1G;K9K"<]I U[;A2RO.)Z?GE9UJ(RL=#KT MQ]7ZYVU1=_H^N,8+!?-#)BGR\X0AG"81HD*$*,%91$3&_3CW0=>B9G2GOAGM M<.'Q9<56Z[I$7YLN?0D@%5=*O79L_2?P9L007,.K$O>0 >].NFC5A1":!:_# MPS0WI3"Y7=VD&%*=]VH%!L7)70OP=3N3TF9L-',C3XLUF[F2R^)!-S!1_^/J MP+?(6QX6!6*W0!1,<6Z9*E M+DT[_R:4O/R["T/MIG8?; -&QOG8$##NH,X7)R:W@>(;7[ZA< X25(W_J)< MD*P^(*=YQGK?(F^4MCX@S_G<]:&77'7/N=O\$*7.:6JZ\VP[92Q%M< YBR,N M!!),1@C'$449U45K:>[',L7,]T&!* CQB4U?3=A;K967H&>9>*L]Y4M;Z P M:GRM-0E,X+NNON8Y#7![7KS/!L@YZ)LS#L%D37,&2+]QQYQQ4,;;Y1BL<7$R M?7-O=UW4&7RE^"&*:ODBVG_=Y=6+U!<\B1$+$]UG'G-$LC1!!*<^]>,XP+%1 MTTE+^E,'DKH9Y =L>.VMLH,D>R.<#6-)TZ$'C"FY .Z2Y'N(^.[S\(VHOU5* M/@2:@>Q\T#*6?7JT;/KXJ/W>K\OJCW="^52/I/SC_?J1+(M%0&DD8S] :98R MA'DN42ZB'&4XCP,F6>@+4'QIC.#$YN: O*?I>SL&O'\V+$"G98U!:&987 (# MLR2780)OR6,HJ*M&/&/DYFV_8RC\2=,=T_UOMCH L*Z1T66\2#!Q$="$HFP$*0V R@5)&'2SUF0@7KK&U&=VO]H>?!J M)MH&=C4;WIX/4(,/&*:&7H=KI("^A@N0X+X&1&A7'H81S7G]"@@,)]X$Z&7; ML7T;?2=6Y[YRP=^]_E8)?ELTCA9/??']U++BT5?OEV=]R;(L=("@ M9<@C.XZ@ _R,038S*=- ![,K&K7Z.OR^B]IO6]1VO'C7XZA9C.N# N!L4)\Q MX9E']$$!.1W.!U[APK% S6'H\[JJ%CC( ZZL"1@& M2>1#;$L/C8F-B";1W.&N&]KKPG9R3P<7,W-PH;0PO=_/WVE#%;]H>@Y+!0:D M<3U"IT/A;:;DG(IX=A!.SZ,6=\']*<)-HMW_+ NNSPD1%D&**">Z8# @*"=A MBGA"14JYSQC-C.^"QZA-?#ZHL]N7G>SV9LL,Y! M@:GNV6S_JR:E]K;P_LXV%T)7XH/[&K85-[!J^'11>:[&C:5Y^!J MV/@ER^/-L[Y?UOV4GM9E?6;Z)AZ:'MQ".1Q!Q',4I:$R=)D?H0RS#/D,\XA' M))+$: [2.*F)K5Q#N!X>N"/M52UMX$'E/%R&!Q,G( /(COY]U2];V/RPX\< MHZ*Y.F*<)S3OD6)4X),CQ/@;=FKIG]-<1!*%@>ZAS)E$)*,1BD.2PY1Z7&COGYH#5[/(!L6SFSO6O^1\,\8&13J8 M)S;\)%S)KE>K:_ZO[VN=\=16!!@JV.F;$RN7(N@=U9??@%N!GI%Y7*LN$Q>F M42.2.FP5."R9E3+U+#>;(IT7I:M$ T_9>;L?R;+\.UD]BW>ONQ__>ZDVQY+] M>/TL7I2\.O4D#U(_]2.,.*,489EFB 0)1R1EB>!"M_,V&A<"(SNQ5FK*7DW: MV]&NCWE?KO]NE<9C"*:9S^L>(I@F7X(.V,F%">O(PS4D.JM["P/BV+<%OFUG M,CX\/JW6KT)\%2OM(76.X]LQ]G$NTH@P'V5I2'4B<(BR!"N3D?E1$BJ[09,8 MUJ1OE"9$#ZS:]5TS5CY?U,)['#7=6P5A2 M1P9AG-ZLML!8_&,S8/ZBJPK(^U+H*^[W[23 MK?@=<'KT[8N+-?3>W.9\\QG M*)84*[,0I4@W[$0QIC@5*24QSA>%'DHB^/=+2B)-N#%2DKQ1DA.>C!6FY<03 M#0M-%'E=AY)(S<:EE9)&P)O9E0EQ=%D]N85TVSU4(]H$YZZ'$75000D!9+): M2B,FWKBJ$@+4>'TE:#7;%H.]7< 6F1 RRG2CTD W- \C'U$<2\1BRCD+"(^( M@+DR9RA-[\#L&]II,)%N$-B0AK8"[$?*S,@XD!X8D#C;Q\]EW[Y!H9QUY^NG M,G,/OD%13SOM#3]N6XGX^+AL DQUQ6.A(_FB8,K!>;_K+[&EW@@/N/'V[%A71L.@-K,!DP$( MLPPNL;.H;+3 P%F9(X3VS#6/%K"<%D#:+ (S15PL%Y_5L6#U0:V^>:WC>B02 M"<%)@E*1*T,CPQC1W)0PX4^>R#8=@(7"@< M3,4AY7L6VL6A1L08JM.0X_8Q@UT<4^3>:NK"[;Y MMPN"8Q;I:UC.=,!0$H[R5&0HRC*E4UB0-$^@4SWZ24WN9N\ZVC<3/:#G^S, MF9[@+Q<:>D;?4FS+<_9)["[/X<-B.3MIGR$S\UEZ6-C3T_+(\Y95_NR'X,]Z MPD\].Y >SP[\JDB42[8130*>VF>/_N6W8JFVWR:[YK4>+/Q=_+EYIT3]8R&$ M'_HIERCC.GTV%3[*<<(1IS[-$R$PQ:!<^"F9G7CGW;*N\\F[DT(/+LVWH2[Z MZNW*Z[^KE8'1PTD_4S,+]5?YI&!6;G2>Z9[)YD.LSQ,G_ZAYO]HF#KZVX\\] MS;]7"^"R'\(,.+MJHS EJ_-V7Y@!]).F#7/0O'0+^95LM-%2YZ\[^7E=/.CT M.EV)=61"I&1I'F-U8/*9U %7C$@L(^23- MI&!'B4[MMP8R!&4W]GB']-\T2 MTCQYFBE;HVZ(,M10N\<.:'P-89O)GL+@<&XC#E@'7@>>._E;P MKR:"^_F MAW90S'-+1S 9MAMNX8!9"$,DKK9SY=SDGII):Y6'.K+T;#FI9B)V\U,-WX K M[&W!E8?"GTF30FFHH(=O3:R0>V*&$XQZY!I7,GN1H)&=+1UG@=/S[%MIR=%2 MLVE%OPA=+3CSA&5F F//C\]U(E>=[M#3X+6M!$AP1'(I$I0SG:L0^ G*1*!+ MDW,9)W[(LR !#3TTI3RQ8G7X:#-]>GL8CS0&NA!<,[=Y$LA@BGM]=W/K76_4 M&8\^-\T)-FOOGM2-YMU57U@+["H9PICNO.D14#A.$B; "UAT9;HAA?I4]0#W MZOJA%'40J_V:"Q*Q4&*,.":Z,UKB(Y+H^>J"92'.%21F-S5E M;T<:T&AH *%A0^!0;IC:]XML,W=G0'9 >R4W&-@U5@)^_+ ^2N."#790&GA] MOMY)XS(<=$TR>/RB*89?A>Y+K MGLLK;_>!?-]](-\./I#[X0_$=I*B,_3\G*VWF+GH#,PS@QC=K6]K=;1A$J-(IE3?QD>(IMA'/"8TC'QUA&2@H4&'RT]L 3N7K+I9S97' M1HK03! Q-5RV@3P)D%.%A\9CWN$^Q4&WN?LD]MTT[2ZQ>Q M640\C'F4""0(3=4A*I H#T.*0I;GL:!YF H,3V?;+C]#"EM#S&*07P>$, Q3 M*AE1)TD=C9))ABA55H9$61 ',6>AH) >>;806/?#6SJ!PFV5*X\ M1<=M@MXQ]PZ3\G9+SYZ(=RQ47_+=R3.6/2?7Q<-F>\VIEF@'0BG;X6,A[:B?^MM>]?J\ZSJ M?HQW93TH1C&\(#C+PBS+E5^=,?6'KS9#SC"*<1K3)$D9X4:AOC%"4X?NFJ*D MEO95TSE4(>1MZ9L78 W"-:R'+D& Z:.]_*!"+1/AK*JV!A>>K83+1+QN/9?1 M\W8.K%KF292;UWOU,6^N"ZZ;,3_IFX+/RT+H!M8^7]EQCKD?1Y'B*U:X<(BUCM MY5%]=Q>GN=K>XR@#M94\)3&Q =A/5K=7]AYL*8ZQP2FM"<#QK;$O8_"(!W> M @[K^6N7P>)H_AH,GDO&KYT7%S!^K6>1MQJ_=EZ>@?%K R_!"P0^E'6NY'5! M5J_5LMK7NQF6"IQ[?^HP0%FN"[%^K@XKOK=LF!<2G)5_V$*Y$AUX^!^6VONG MTR(^$QFM*A#.+CI;+<*86-VJA-%G'9_[]U]!WX]]CI5?SZ0(VW'++ I1[-,P MCG(?Y]PH1FY.=1/(OU=U>D7=KJ"9V_9U4X"W:]BJ$YN#PTVL MY:II-_I2_8?7I)-T6/.^BLUS"1C[ L1P?,N?#CZ8N;!$;@('P0X1*[/QO21%)96VZBF0];UCG2_[<5F0@BW):G_0J.IF2?V_:A-( M?%_B1/(,\3!/$/9CB0C'^J_2#_3$"IF!9CFZ9&YBZ[4CW#D+5Y;I.4X_$S-O MYZV0AADZ2Y#!7M 4:#CREYRR-JMG-06HQS[8)#0L4Q%'!NSNVCT'62IB/P^1 MP"Q&F(:^,IHR13200< "SOV8P?*<34E#%-4J!_IX\O.W@V'8(W.@+T/5S.Q- M@13,I/4/QYZD6S94V)GF9;]-CVPH&-#YV1=VQJX#O:G[A^O-EK??*T8W8;__ 7AP7]?0MME*[X4NME%G4FWDWZM_- WE#ZTQL3)T M2'L'M#U-W#P^/PC#>#3>%0(P#;(4'A15-Y',*H8^N/!L$7,3\;KQ<:/G[8(V MOQ7D<5UNEO]'\#K+IJJ>=5^)=G3 (B89)A3'* QSB3#-B!ZYD* \X'$8JV,4 MYZ!,VV%R$ZMMA[C'ZY2_EOQVSBHL,C,"G8R3B"4Q17%" H1)'J LB!1T1&8T M]L.,Y9'%V%H'"%Y\OOPLJNH_O>>S<++UP!P7&RS-8EONOEPPB]C]7C7)@5L@ M/HQ\K\ 1+3,1'<6Q1HC-&KTR$_PX9F7X%MR!^5[RZ[*\YNLGJ-MR^N;$5F]+ M"NB;]$@X[I%<)AQ,Z[Z7A.M>69V)*IZ9K"!7Y+Q(5@Y(SW*SN1WG1>DZ&P-/ MP?7D_N6ISMTRU8[M\Q/KQ#UY]5ZJ@W9L^Q&/YCJRDVY<,VP$@^G#H$QM"IVC MI)=C8:PT8;?(;-__8[:[W_J3W]FYTWIJJ+X$^<=R\^/FN=JL'T6Y#2.]?E$L M-FW&%JEB/2%A@J2?9,JOULZAS"3R.IFIG%\Y@9.Q;7"@YV)6 "FWC-PS(Y,Y-Z",R MMU:G!$4D M% A':LNG0<80YQ'&@F8!A>GI(+6I;]$T-;26Z+D2'M$$*P]Y.XZ\E6:IJL\/ M,/T=AM!,C9T! ]/FO?0UW2MO!Y*B[=7$W:FUD8R.M'N8UJQ*;B3VL:Z;O61= M?_Y5L+4Z;K^"@F5][TZLL[L*[-6K=_V3*"&/9HYOF0%7H!\B,!Y0NU1XF%X: MR^TVT#8DY"6EYX<+SEUVWBM.3\EY_W/6Y>8ORTI]4A_7Y?OU,]W(Y]4U8^OG M8E,MDIRKG3-(41(JQQ?[28CR),0HQR3)DD!&42B!A>9GB4T=V=Z2]GXI6_C^ MYLEUZ;%2\.7&6ZV5P0(V)A_$SFP[=84(3&NW%+1VBN6+_AI=>3<-$'KJW_9^ MUOM%C]@H*[(Z/P?0IK!\5&1W)>7G2R MNJ[NY-^K3?'P?J./U^7OY8=_;UZO?Y:\4O_,;XN;EY+_7K:YBJ:EY);K3WT( MKH<6ZXSGCV19>HJ[9^U=ZQ#:WT55NY;OZY:I.J2V5(;A=T'*;1%.O;55]8-J M@U-KW&@+HG[4#P'JSFVA']_VYT => "?#'"'2:HNH+,K6K_D/XC.@]C() %#,F>$ M3;CZ5 MZE3F[@AF(I2C(]@@J5F/8"9"'Q_!C-Z!'\%J[_;#GR53CJ_9,,C3MZ8.:/XI M2K:LA%<3,S_B'(DV?G"QEPH8\]!T/$.Q0.>'?@FL3@5'2\WFZ_>+T/7@SSQA MX9=_61>_DO(/L=%A)ZU@WP1[+NMJ4ITUM'[>?!6$+U>ONY(>]=QN_[PNBF=U MB&A,N,@DR2E.42Q3Y<-C/T!$7]8'D2\R$8A<,*/T'L=\3:R:OQ6E(*NZJD)[ M^MN?'\BRJ/2_0$*9KC\1@\/!V^ ,,Q:*1V_/9%.\LF?3:_GT6D:]+J?=:$?# MK-=P^S8?".",\C8?C-UY9M8/"';\<0_CX%')(;GYCE7N,3HX@DVPO&722G_7 MA)LF"_:ZX)T4[3PB02BP0%F8ZJ[.4J(<^QD* YZE3.1^@D%=G0&T)]ZP:DZ MJ2H X,P.]VV((YX)(I(,1=K1Q32FB$8R1C2A. M2(=3O(0;B+*6)S<$7T=XR/RE= MJ"G#;,-YA,PL@1.Y87J_):FKT!J1';=<-I;-D:Z?IS.K9H^*>ZS'XR_8UCR_ M?V[R76'USMNW)E:Y;BWPEB2TY'DGX'A,QUXVF%KUE3J/BF=1Y7PLR045SKNE M9JYN/A;AM++YY G;L81*FW1# <'5BNK34:JV7//:LZY_=U?73U?;2!Q?\!RG M./=#1$A,=.XV1\2G.HL[(PS'F<@8A=5\@GF ?$6MJC]WG2]TP>?Z\5$=7RO- MB/?\I'X4VZBD^FWSSTV1.?"Z PZ]V88Y*9PPC:_)>0TO7L.,UW!SU1SIKYK6 MPE[+TB[@RUW.5K2$P]GH12C]F2B7U;E7:>!\M,GYU %-G M.^G!*CPJF2,-/D]G5@4>%?=8?\=?L.B.)$3YJ5P_/]6[?UE]A \T&UAB8JW4 ME+V:M-?2OO(^KM>;8@UI,S8$P?@!W)'T,(4<$GR""6,&,MKU7QI8=[Z63./" M'71I,G@V)%YMHX@,2X M,KH! ;HY&L@_@5*.RVJEDP/+SJ:2XZ)U-=+@:1<9P)K$@H6$DIA86^OTC65G&QW3\[Q_>U2$6$Z="2=XUK (5GL,GK[%IPOKW= G(/LWJ'G M+')\Z[M52BK!N\T@.JX'?=T_THFF_/M&+ELH[SM@F- M@9\%&H9NMHFEG'O:.O M7M5YKJVA\8@6X,I[;$3PQ'8 5-41PB/0G-4)/_)A$_07^B"!=UF=S^9P*P& X=0/=XZ=VQ.F M+>.CZ[G=V!/&#V.?Q[^T3>%3+O 7\@B<6-*^-/$769. )NQMQ1G_-EM+ OM& M]X0@KSIG.6]02(NTO2.!+LC:VZXT<]+>D0"G.7O'#UQ0I?)E7:RWO1QO"W6F MV V9HB3+R32DN90AC<"%*6?)3:Q(MX5Z252;SMCG M=LB934/58>#, I#NX(!I8U.+TB7L-92]7UK:#IN^F0GILA#E/+'Y:T]&!>\M M-QE_RS;/K9V9>"<'\KBRQ!=FZ7VS_$(9WK]_5BM=_+JM%X N:QA*CF.N$?AIR1 .:H"B)92ZY9"0& M35TQH#GU.7)H@,B5I[E06J'X )H-$S3-C(9CC& FHVY7]'GY(KCW7?W[4N?D MU0W QT"Q:1YK*J:['K*C%.=N)6L*04]'6>-7;6Y]B![34IN>?2[@5_&PK+3/ MS:\?'LIZM&X;$HX#F0:AGR _3"C"@3I24)EP)%))9)1$OB_-.S#":$_M9Y#5 MOI;GRJOVZ:GECB./;%FRN&N! 6UR?S(9?$#G0R-WU_H=5]W$WCTSWHX;BQL. M&'*06XO)$+2\B7"*)/!>P0J+X;L"V)(SQO^M9#V,Z=LM8>? 7;^0Y:KN=[(N M->'#]BC73'W7GE=Z_GG=590O2R;J.]=WQ]>R7];%2]W!OFEG7S>U[?[^9EUMOJPWOXN-'NGR4&@F M]RLU+]6AP.\_2-%6NRZ"*/.SB(8H9SQHNOQF,>*_J/%KNN+LZR(TBS;R!YD)@HWBTJ\!_NV^%V<;P_XO/&GABJ#_% M=X>9--T+QITXVP2;#W^RU7-]$=DP=^5IB=1SS5?D:^!-*V>O\J'M4VK9:^ MDQ^7%2,K/?%EP6E(>"X3Q.(8(^S[:K_CF9[F3:(\"O(\SCEDT[N4H8GW+GW^ MA>T\%R-LMH',B9M%#+K3,K_E[O7*VS&B0W(-*\-SF\!FW14JCJSSQ>S,:F1= M@7=L*YVM:WG+WLXM5W0.YB'?23T1^=VK_O,C8>J+M:\E)9QGDE&)8HE#A'/U M$ZD[/,:^KN\34)@Z,MYRI%7QYKG:K!_5&MKAWB@GK&CZLBA/+?#_ M']W)_%=]O->UJ_4TD)ZIAHN/Q/#*?EJ@@1[QEID:Y(,QZ.H?-"M7.@6] M'HG>,-5VS? F:4EY 3:N[ODM.)CWUM\>HI,<@ N6LAQD4MVLUI7XOOZU>%J^ M5^:S_BZ!6P48+#6Q;6IG#M8LZ)&#WY>/=7^H7[_\U' M/3]ZV7)B=PE]%DC8G;T+>"ZZJ&_&:>B_-\@H'KS;:9"QNY-W@9"3BW@KI*RO MW\?$-KUS/[O.FURTCTEU[G9]]+W+CGIWTB@^=[VJ/[_&*=M%X)KFICHVUS;> MR^(T)M(/44SK*_:0(4HI1I&?^VF8"18F1NE1DW(YM?WM*Y/M!O?;C'A>9V3> MD*?EIKGJVX;N[;HA3O.!PHZ2;_8Q.;Y^N?@3LCYP3H*@XR.I6Q[?Y- Z"'(H>-X,1J.#".<_JQ&SQJ>8X-FOQ \ M2O=1S[6[KB\\RM_+#P575O3?F]?KGR6O/I7%AM\6]6^JCRO^]VI3/-RL"UZ] M+]4/+R7_O83U=G!#;6)+=:]V@K*^!?04A]V1D.ITWY:YM3&O3WJ,NU([9;>N MBU>O\V9];:%>7=61,"&4Y_/TM%JR.@+V=U'5-;5:NF4SBZ*=5W&S?JF3KP?O M(*?Z$,?CC/-_?C C^5?YZ!PWYW +NU4,U!$+LX5)W4+6C:0Z7MDRK%!O"'?/ MFVJCSD[JZ[?(,,,R)$R=B)G0%5,$$9Q)%$=,\"065'"Q>*J]W&\;4FX, P/' M=""Z>TS-6(W?B8=EH6>Q>92L+O,,3X&221*&F?*L91YD"&-"4)[X(?)])I(H MY>I7<0N4^G!G@VE+RQBD#S6A*1 R#$9<(K-%(*&Z\CK$'(8$SLGAZCA_LOZ\ M1_%SXIT&OJ&]U=>9LBN2[$^KDZZLH' MJ!_LD=G@TM9:7.#][(62PNYB>X6RNW8]7&J^&]9>$0XN4_N?@.D)%\O%9X7E MZOZ'^E"^/-)%FV2^:[5E7)^V&=Z_Q:Z$MAMU^LL-VY"_P>=G? MJ)UM(?QNL(5PAVMORW8[)O5M/RIH%^@W^\@NZ?X\^T=GT?1Y$F#'FSV[)3MS MD^=),#MM[CP-F8O.=TVUV'NAQ_(L"\'AR;T&:[WU65#7?RK.O#UK5N?"\UB! M3HM.8')\ACQ%:(()8A ,+CURGB?P%@?147'/'$_'WX,I?U5N%M>/RGPPLAT" M%(6$Q#&-49;&"<(DP(BR2"(>I1GE$2.)V82QTZ6GUOJ6F)DJ]T@^K+27R0-4 MSY:.PWNG\^P/Q4756YV8J/K;7K]Z%IQ%D\X+LM69@2?L;F=N"U8*M0^_%\U_ M;XN[;;/>]D)_U_85^S0.B0P1S_P(X2R.$F)M>OF MAW9,*GV_NF\B373CQZI.]ULM"5VNZKI+X(!Y +IF-QG38 ;3X"T/WB];+OZF MH=LQLLOXF:+!+AP 1W"[7-HVR/ ;?$_ MRX)O.]LO(D$IQ@E%>4!"A .6(I+&&8I#QN,L]-,8DT51>WK*5S +>$&9,%*B MO%&B$U;,H[:BJO[3>^YRLXM:+0OTAV)(_;?A"!#X "-N$(&:!$ W0T@/F-G% M(VY;_&YGP \0%IH21[N@CVL\8=$<6SP&8S7@1>>+Q-C*>Q!GL5[$:C36K@$/ MX)K\Z+6)_3@]:JKIL7#1[?BQK.,!CPO$A!D].PFAT[7Z9+&=L76PUIR3MOJ$ M.)JWU?O(!4EN0_/LSH4\[]4G_4/]X[TZT@G=[&"73WTO2MWW8)$QD2_7NEG7(HEI1-(T06&4280%#U'&8XQ8)A.6A#P*I-$< M< #-J)I97\"]>,E<^"?]['FH]:*V59&&">9BBB,5-^8!XBHGQ#Y$O&HR3/ M*8^H72.%,=)3)W5UFNDUTQQ;AKP.1[:=#T9A-737)@$+Z'YU<.I!:);N=^;R M.^\P,$KXC=H&F )ROA> \0K65WSK1[&;JO>Y;2E03V5+>,9YQ!(DTT @G*<< M$2H9HGG&@IP$49J#C,H K8FM2#OT=3_V<4O;:J+=$&;&-W4ND ":B.[0RQ:1 M+>4K[UU;?^5ZFIV!J.XNXUD\B((I9VG?MW7OU8=!'OM9%B$>^ G"E"J_ MAA%=IA9'N8S]F&&C3#\[\E/G*^V9:=J1==F!=R,"P&KF^DP'%LQ$#N+4:??K M./WW,A@<-B "$)^]^Q ..NNNW-.D.([+).C[^X9(K-^38<% M/?Y&CCQ] -=+2\ZO.H\LU\%J?551XX- MLR8[KTRL+"TEPZJ68W&&U>,"26!*T1)Q%M8^P[A5!F1WG=FR'WN8[V8^]OW: M-L%%2*%\(%ZK2M.5Z_IY\V-=ZAQD1;GR.>Y'O%,?90'>8K\."4RIT1W ML(/EM@R1FSRMI26^G:+2#D\A.P;L^]J-X&BV#;E#!Z9^>V#:'+ZVT?.>MLMT M%A,9G66R#!*;.8G%1/#3_!6CMRQ:,2LYUH70/>E?1/GZ_EE\7[<3$N[DAT*N MU5>E3K,S+Q4 +#FQIK><>%M6//Y<#PEKN:G[\^[Y&9VN?1%XXUOL1+C!;(!C MR& =A^$ V+45!M"9KW9H#0,90!*AS4C.W5JRG9HQ%')PI57B#I3 M8S=5@NFA'A?TQS4#VJG0(H6$;X%!N MF-+WB^RU=-TT,S40S*JOZ="ZL[4X-1"NV^W4Y''+#5\\:,_AJWA:E_IF=G>Q MD0CJ[)70@,*<-] MVH'\P)W91G3X/CPBEZN=]QR9>??:$6%/=M>QYVWWTQNA1ZVO;@LN_OP?\;I0 M&Z7,TSA'">,9PK',4"XCI;)1+HE, AID1N,[SU*89P]MB7HU54^1A>ZBQ[B8 M[I\72&NU,69]\DS IWND.<>M-L;ZRJG79]*?EN\B*K) M9-HFVE(_%!F/D,24**U3?V1I*E$<4"8)3EF:@E*(Q@A.K(1-5==R3U7W"RO6 M!7HDY1]B4Y[_6EI4?(U":K:9N@0*IK\-1M\:\5^]#N4)+GI-Q72T MQXZ2FW6O-17^>,\U?N_24E"]]?_ M7E2L7#[I\AEPT_/QE2;V'A0#Z-/U];VW3?3H\&!^ZV8 R/AEFULL8,H_!,,$ M#LU/=>K+^(]?7+0]VAC&V>R6KU>D^6''"I M/K+,#(JK.]9]4?^_5OX >1!'?:-:=CS-#_@>?0PC(W5V!0]N6"Z^\?ZY5ZHVJ&.W]9;T1?B5V22I(%J4"I[\=('?\S MY=W3'&5^E)",!P&/8>W^3"E/; RV3<$M$K/-P3-TY*> !!BM:Z(=TQ0>@N5S M>8EM1'?^>VP('+U7V: %+,84Z89TWQ\?_GO]\]?B:7E35+RT&% TN,K$&EX3 M][XO'Y?%PY6G6/!^_7)_6X\"6W(];QXPB&@8C?&=W1T0,+T>Q6"*44-&LMH- M&1I>>K[Q0D8B'@P6,GO#;C=OC, N+-6V'O33A,22"Y3E-$"811FBL> H%30* M RJ3*#8:B#M(9>KKLF9?VA&U[-38#Y#9[GRQV%8[,4!B\'X\*)&CO;>?QJS[ M[*"8QWOJ\,,NRE'N27E7UNV6^-_)ZEGU,?+'JDW@.)C-#X$!XF.;;R U6\Q&I'.GU.2JS*O*(J,>:._:X MFTS3OL"0B,-8)#E&:98HM16ZSVE4IX;GA&\'#E?1+K MAY(\_5BRMB%/DTWR5;R(0NUEM[J2YY&87YA!H#6,N;F%"Z;VIPFKDS?_ L@[ M42+KV\?=S"$82V]U'&OC?+FI6_I@/WSI^TZ;AMO&%IHZXK:C[RD&?GGY6^=[ M#0BVC<)A$&]SB00PY#8 PA31-E-)[0)NHZO/%W,S%?0@[&;\DF4?/OZOYS;I M[OMZ3TQ?TMT6[153_SR8KSK!M%INQ+>F1UU3CJ8K7Q^*>I7Z]+ @(DXE#AA* M$Y%K1R%#- \I\HF(0DGR2) ,YBA,S?+T7H8^9J&:.UV^NF,/V.!OZD_.S _Y M*WT:0#MW?WMSU3];:S_JZ,K;36=6+I]WLZXV7H=%AUT'9\+15:O"J=F=M[_A M3."?-$6ADE 490*==*+;Q<1N"M"T0\BTJE/BDN*%,Z6&[F&J4^44X+ ME'J?LE4C/:JB5$>O6G7KV.J-3D K7V_67"R$CV7@9SF2+ P1COT8Y8&D*,@D MS0D6F$H?IE>#].91M ,6KIJK *_>06M&/,T)5/^&83152&?@6&GH1;A8**Z1 MM!=H\O#Z,ZNVD;"GNF[V&CPN\KWDRI6\+?CWY68E3(,@AV]-K*TU#?/0QI%$ MXW$,>V%@VO6])%S'(8]<=[Y\6?)GLO*&Y00%+/I%LHI.'"TU6RBB7X1NW.', M$[;)NNV,IKH:9Y$&6 2)P"A1.Q_"?J!;^>AX(F,:88EI';77YBA=E/ M!&NJPZ"]*0ZA,(SU6PL(#.L;RV:10MLG@K,\V8/%9TZ&[1/L-..U]RF+\63M MS#GEGHI-]5YLR')5[1JZ6Z7(41[[*?*5/>.^'Z=):G02'J QL>7: M4E1?RIKDE<<54>BLU%-DS!R%"^6%F:B=J!^VHKX?$M5B"NI989Q-/SVE,//4 MT[,BGDX[/?^HI5>^?"B6TO'MIM)CK9Y]OSXR,I7_7O M.KQZ>V:]+;= Y]\,<<-#@7,4@8>%862F2@,"2>WJ?&%&=-YS!PB(D_,([&UX MW/MFN7F]+@6I([-I'$:I"&,4)/50=$P144<2E,94^%GJQSXV[GG777CBO5R3 M\C0M8+#Z0/;QJ+2M1#!U-10&%&'NX]PJE'RPT&PQXS[VN\'AWM_;[;6?EX0N M5W4;MNW$N^T!+,'<5]YNC'B4J3.[C-1Q/8ES%&.^JV M<])JSX+A+"0#I,SV13?2PY2K0[/3/6J"'J[CPCG:\@8(S;K-C0M\O+49O&&G MP_N<\/=+M>"2/FN'L2W%Y$D091GQ42"%TN(D4V=8CD5=J\HP#4G"0',6AHA- MO.WM27M=VI:5JX.HF6FT*RQ@.FT- UBI3>1SI-:#I&95;!.ACU7;Z)W+HE$Z M]>J+4+LR%2Q(8H&".$N14N *W';-/3X7O+M,?2^7+,OZ\TU7S]M!+QU MB_&"D^MBS8>WS5#8!4ATI$FS)/BS'N^G./-:ULSS,ZW'P7Y6.G@?0B MY8(QR27R4^64XY 1E'&UDTM":9;$/*1)L"B:QM-F.[@172/5R!O5Z%(WUI![ M]>\_2"7JP'6E.4#*)CUV>\$#&U$8P6GF!;B#R*X-14M>#TIL&?!J#I!FH=L! MWF$+"HC(KCI0&-&11GHO$+$9M2G#JV'67O*?I>SOR5HTI M1@$T,Q$N80$&P"] !&P63,5T9!%&RKNC8?R]_:Y?\5A[=T1JRL""\ ,LS%346D*84C9D=E=C#JNF^_AW5>)\ ML/:\]KG.:@ZRYCRU*K__/34% :H?5;/2M1%5[,QB>4 "^_(C)C3G=6F M@.$X-C#P!2S3W=;%@X[?Z2SU7\FF'4#Z53RUD;X[>5\N%=4GW;GR=T'*[^J# M$XL QS3B6**4IA)A'#%$:8QUZ_?$CP5.P\BHP83W>1]*YR[>R8F#?]_&N^V4(3+&,T)0BF-U%N.^0'D>I4A(P?- )B3, M0X@!ZJ$Q]:FK,V'Y<&OO=(RO['II]"%F9DPNQ $8:G$# =A0# CIR!3T49A5 MV0=$/%;GH4$]SFN)<"I1(P=3114I$F!^A)*6A8 &740RJ!.@G M,[':UM_3.K$(7KY^!A?X<<1.VLN.&YV$XO8J9N^?3G/L.)5R@F-%A\B;'1M. M!1TZ%O0\??-5$+YJ0J,ZT$!O-@2>:,6[5 MCEN;@74VJ)O9B5FPA)F2=O#=GB?O9\.4UW+E==GRNHD*KN91.T/'Z1 ]&S[> M8-#>!7#U#^.[9$%+ET2H [O8%;U\UGW+M_60K]LTR_?/0H=4/JKO\2+ERJJ% M.44RE429.,X0]4/EL8@PS7)U^F YJ.$.E('I8ZTYT'F!(FCHUDR("]#AJ3GI M5D;5S%QY.W:N=/XT%6V%51UUU2PY]'XLP7#E%T')S^LQ68)SXDO9KF/I99&R M4&2J[;3 W2TG$[G(HY"@( KJ(;X!HCFE*&8RY9E@?IR!"BG/$9K8DFS)[L=8 M6N>,G(7*T/-Q #0L;&2'>ZTC CFRBEV-$V!./8NQYBU:B.JIY)^MI M-#?KQ\=E52W7Q4>A9TGH/.R%G_O$QQ@C+HA4JILSE),@1DD2QC$3:1YD1M%' M$V(3JV\=KO4JQ4.E1^ZTY+TG75(H>'6EY_AJ-LB#89\?(P"'%=HU+,"HI"+L MW^C=@]:^@[! #0:=0B*7:_1"\&!-1(PB.-$G7%8C#"6$F62)DCBF$C?ST))C7HD]R\_M1O2Q!BL M78]#*""AEAG<#&/9+.,A4SD4AXN_0>1BU'GH?\I.G;[J+L"%X%N/Y)HI"_N\ MTJ7,[X5M#D];(NT?ROHOB<6+[HH&;5E@E&F$L2A0+1D&!E!]2QGS*6()9) M'D8(47I3IS+L6PEL6? Z/$!S!U/C S,18O_^6ZX-U!)7>RK=PCJUW9<&>JET]X+F2"N)#* M,.&8ZTJZ4,]>2$F4DU $H$HZ)UQ-;*2Z/.J8?8?+MG]D9\S+6GH[3KT]J]:1 M53^J&IUD-K%,8CRVNV\5M1S;O,_>N'Q[J M0J#KQPUL?G/O$A-;0$6IK,]X^XHTZ&CG?LF'[9)#H6&6IG?HB-"62E5WWJS*=. ,%TE&GK,\CAQ MD #Z#[%\^+$1_/I%_>N#>+^LZMEO7Y6)W*;IY(+P*(@2E(B0(!R)'&4IPXBE M<4I)I@X1 8'=W4)9F/PF=\L"(@T/'F^9\!2?ACNF-;Z&+OZ$F &]^>,\\2TS M7LN-MV7'T_PX3(ZZ% M7'CJ4_+S.N"4X)WZW[3HNS-(N+WT1D)0&.0V0C .. M&ER#AP;TV$E M\H468D=S*AMP(M0DJKZG\H8:?2+JL.*>/F[9+E!L= ?"^W+]LN2"OWO]K1+\ MMM@U"]M/4UJ$.$AX0#GB2C>5RL8$D'7? MNZ>6%8^^]G8(!#8(-(?63.&G 0QF S16=1?1^PY6OVA&O&7QMTZOP"G&<,$! M<-4FT)SPO'T"P8"<- J$KP _W-='R-\*7JY>'SJ! _-(V]D%)C[H*Y)"T=3? MYV_ ^OAAN<>/^DY$ANEV3=+KE=EI-&U4-*MC__E59SO\CPK6#0&,/PP?QG[] M* JN8S0?5^1AD:?<]_TL1K'(,,)Y+E'.2(:H]*.0,IQ+L[*NDY6GCFYO:7F: MF/DX]D/IAU7L(IF :F4F#F@@>R_K5A/9#U>:;21[KP#=F>S]#]AF^U35S;K0 MSK,H],"Z=Z]?]"6_N)/[?WZMAQN1&+,\"Y17&V,]62+ *,=!CGC&0YZ2B$6I M428SG/3$2J49\3HDO88-JQ%1 #S-/-MI4(*IJ25 %KD]4%F=9?08$YXYCP<* MR&GV#G@%BSH([2?K_^M[D1>RJN^A"]XWPDXY2^5&=XN\65>;!8_\G 8,HPRK M(S/&,D5YA)6%R2A+:9S+. V,BR,LF9C8N-2-I0 E +90#EN3N0""V17-S%5S M9N[PY"FFFIF5WO',RKI+5,.9IUF; 5= O<4,^-H584R',ZQ,XT* !FLW;->> MKZ#C0ND/JCPN70M^?OJ@-HO-ZU?QL-3Y1<7F"WD4BYRD7"CO#R5Q'B&- PXM M,G548I< H]NF*2;0_8<[[XOZO^9#%%63Y_IQO=X4:]/L@G%D#"*%KD !AC5@ M>'C_U#QY-5..$H>,!+>+)0ZN/%\\T43 @YBBT0NVDP/5&M=/3Z5@RW9P[\./ M3?7M^NLW\WP]X\4F5N::OM=EP&LX\'Y1/%3GVQI80F,6!G&*"DR;QP"98*2N ML;3.1@:.T9MY;J"A^*?# TU?M&GVT,XPT)&3Q\=EZUX7_""\\GE9B'J*V"(, MXBB*?5T)'>A*Z%B@+%-_8)9D&0]%%DKSV :,]M06HC/,H<-.7=ARP)#W3\U2 M,QL/U 8!AK1!Z&,Z_("VY"\&':2;Q&006G:6< LEL.&$%1C#S2=@2\[8B,)* MUL.F%'9+V X1VMM_]?-*M*53;22D^:J'(:5I0!,4A[F/<$)BE.F)F0A6F&5UMUEHM8$TJ$.G2QD *.9\^8:&IC-[5*_\G;T:WBN3>"Q MF#ID+J^S,40&)&>>2V0.PNF@(L"[MBW\7D3Q++Z*1[+4G<'N12G7Y2-1LMWM MDI8__/DDF&X7LWQ4C]S);^I?*ZFS'M=%,VLK8BD/H@PCDL8)PF&>HUS*#-$T MSN(XP9*$%'+Z<\/6Q Y@R^25MV/3Z_#I[1G5LX0:5KV&5[U9=[FU&WKFZ+,S M,U[S?R(P\S;CAV'1N- E=LZ:&SIA:N8&B"Z!/&V2Z'1URRS83SJ4_IYL]O-@ M0#FPIZ]/; 7WPXL\4FE=JCGPWAO7SPU);A#;OEQH8%2[SH'="]F9WN0P^?6\ M1/:IKSUKSIOX>EZHD[37@4?M')V;YVJS?A3EC>:UV)1M7*SZHXV_"C\D<>K' M*!"Z4;&>M)I1$:(D)#QF',>) ,UJ'*$WL5)NJ7L'Y#U-'^9CC,%FYCPX! .F MK ,X3!"O-A33T08^1FW6G=E0].,MU_0U.YW?V8[;XNEY4WU6^_LJ;+^X,@^C MG/,414'L(XP3AC)&?"0P2X1.\(TP:)[R *W9-N KKR%^Y=7DO1"FZT-PF>FY M(Q!@.CX@_P0Z;B"B(_T>HC2K;AN(?*S7)J_8ST;71>BK=?5OS"C?970?2Z]<7&[A__>RE*M>2/U_=K M?;)>%.4XRE$>^S2(HQSS!%MMO2;49]R,N^Q<=8Z)WHXE M[Y\-4\# 'PQNX-;M&D3;S;R#DKZB^'+]]W&T['=SB-2N]WL# M@!:!&:"JW"R^B0>]]">Q?BC)TX\E(ZOVFR]IP"5/(L0)IH/D]98W8VD&5)KM4!'I=7?]NH\ MO/8L:FLDWE8]S1Z&!Z^_"K9^$>7KG?Q0ECJQ=.]F?#;,43)=9LI;I(:ZCF,K M^NM"K)^K5=OBL*X"ZB0N=]W8SRYS:Z X6(6$C0C,%A^&B-L-%H/>LS]QWA;5 MIJRSLSX2)II6%PLAB')6_02E?A@AC$.,\BQ)$(ZY](7DH?!!(:1SA"9W69GP M7FJ72WWKN=4)M!Z-;W\ON0R-",-\7$44^I>K\&;$,T9#E2(0A2?T\#.-0 M@O36A.K4@:,#'K0BMUP ==D(0$/%=@T+4,O/(=+F=WC31)X@0KLR 48TY[4' M$!A.C /H93M+L1T+IU-O]9R :C\?;I'@."$Z'S9(='Q*TE3MZQ%!81#G:<(Y M(V9=D0QH36P5=K,&2^AP2A.U,V[1G;8;R.9(QX1BS$.4,APB'+-#3%Q/$ M0D'S($SC+#.:ZSY,9F+=;0O66\I77D/;4\0]31U:GM\+U+ &NQ,?IKRVDEO4 M[ \)=D'E?N^R,]?O#XEV6L4_^+1E.?"NVN7#X]-J_2K$-U&^+)GX]H.4XAVI MM$78AU.N5_4'UN[X;/U0Z'8=]Z)_XQS06@8Y8AF,4=8G<(1R7*) M LEEGC/! D%A52N3\0K1$JM2EV[]5UWWB:CF]C!2I9-6BPIX%ICN\S-S'/X2 MGPG,>EDK;-)M7;?AATK/)Y("Z*L.>C,]Y MR[>GAOND['MR@I:IM]WA;??J)_:ZMP62DCQ*"4=YS .$A1"(IGZ*!,4\BM.< MYAB4##!$;&*/[8 T,,UV""(S<^E*<)C%.Z"J735-U_MG^]])S)B)H*Y2;(=( MS9M?:R#T27*MR3LV%WW5=LRB3M"OF[@:5JCTO#JQ3G8H>N^%6N!Q6;2W=^J? M_].\0J5/:I/;S(L$AEY>#LGJK$WMB%R6EY&GZ\UX]WA6F,.KQO./P<,7;4/W MUR"DWY>;E5CX649#G&=(RH B'%.U):J## JQ#!(_2V+.(].@Q?'B$RM934,? M0(+P%_JW[5" \S-_QL$8#TQ<(B),K:#2@<(0Y\2P"CZ<+#9;R.&<&-U P]EG MK+W*PY*1=Z_?U4JU869)D..0I"B)1()PY N4!7Z$:"@R/_(9]H,,Z%2>HS6] M3WE@KM@K] M^+@NZAA64_S+\SB(>9HAWU?;HCH."D22/$=QQ@2.8I[A%,/"?,>1Y\V-=ZA/Y?WE9 M>)7A8/>;@GM9<)7%NV>75?7;KC4OWD>\'J>IR#7^$K3RVH*]R7+V)EN(.?_0!-C8K]AP*U)/6G\:WY-+8E M8S5X+LU(OSC.;,?1\C,;C'[A3JW$F>=LIBJT-:+OVE)$/PPES3.&>*C<8\PY M0UF*$Y1*+*4,(Y'[1ND[?8M/O9MORY'?05KV'\D_K%672@74J)U XZ66XY)! MA@S82V@Y/ @*7 <0+\HPVW^C]Z9L7U_/[>';?G//'-9JLX^:Z#ZLMZ\4_^F M?[[>O",KW:+EVP\AZH/Y K.$9#+E2/( (QR$"L=YXM&7)+L7'&%^S;7U*U&!&:@?8URY@BAGOW1A@UAE!4*D=IPD9 MDW^3W"$H..<2BL#K6&<5MR4%=>/.W07:5[%2BS=W9?456WWSWM[[5M>TJK.= M%ED68R$%1CZ.8VV.,"(BH8APSF4BTR1CL,KTB]B9V#@U-^#TW VX.K2W? !C M%Q=^!F8F:SYD809L)*W !%2;1&8'6+C+<+Z$F;E3GQT UY,3[6)5R\C,#_U5 MNRVV"9S_6&Y^;'V\ZZH2F^N"[\;-[W0NC'R!_3Q$G"1Z4&9*$/$Q16DHF4_S M2%"SJ4@7<3&QN6NR=BIO6;#5,Z]'G'NLY<];MD6AO>0EWT>AM&8J5$&'C!K=C2L6X:\GXHC;\O2E5T=FQ-8A O M L95\,>*AWDC1)? =!)&NF@Q2V-'JA^Z)_O16+G-#2E+/?.\"6TF@D0TXPGR M_;I=8,8195&(\B"DZH:T)!(83ZP%ZV3+)O;W4OOM9"*X. MH5\%XVZNZHF+EBV/(#B;F96)T .>[%P"!T\(AT/@ M*L4;0'G>I&TX)"=IV!9+7' M]FE[+<:RC& ?HR0/)<(RI+@M/NH&:G?R[GE3\>)!.3B_%2_5AG_XMSH" M_2QY]:DL-ORVN"_+W\O*?/#F100F-A"_"U(BW><'Z9^\?5"@TRY0=VQ27MZF M;=94-2WZFY#,?;EPL9KM MHX!9M5D_!8>W[$[@M$IKMZ M?ZN$HO!Q69""J6_6MBK]XMF2-FMOWE[ M&/=,31)CML?$T;G,@H%9CV?V !V?TBY8">ZX_5Y^*'AK%H_-X,U+R7\OCXTE MS&^S77\.MTVH3=W00;C1SH7ZL78O-N[\-&OXQ]VT.9"W\-(F ]VQ6W8I?%9> MF371V9RR2V'I^F07K^6H/.OSK@FPP+[(6.8CP7.),(X2E,D\16F&0S^@N3K? M@_(SSY.:.F[5,U3J,W1>N0%@AO=D3F !KHL$;B\..M$N*EJLS[/VPS97.#1 MRJS3-^Q4^5XA*TJU1W1*>UB0!)F?!8@G/-2#P]7)B7&ER$(F-/&E"#FH;47X %T_\^E,T4_T+L8!J_AVW:,JH!H1QI>A^% M655\0,1CW1YZU$ZI;Y5#5ZB/X%6=>);5#\$_K=>\6LB(<4SS$/D!)@C'"4>4 MX!CEOM+Q- X"Z2<0O>XG,[%J;VEY#YH83 W/X&*FB9=+"U/&';TK;R=S3?)* M>?CKZKSH8'4U2]K=V9 MY8OP-$_UYOKAV_T],&]D $LSG7:$$$RQ1S/^G<^U-!#35>[' *5YJ%T, 7=$FN\X GT<4 :1WK81V%6_1L0\5COAAZUU#=2ZCJ,ZEZ4 MV_:82[:@>1;*M$ZB\A.$?<(1D7Z]6^@)^]\N_ ?6S%S=##;T4#:".MN0\1<_[U@!1DW2HI4,2 MN=+37AKS:NJ0F">Z.OBP[6F5E4)Y0^]%\]_;XIJQNO1*>4?U, H:,D+2,$0A M"P.$LS1#&244^3+ :<3\R)>@O7*4XL1:O*7F/37DH*?8,;Q,#[0.48">;1N2 MWB];XG_3UU4[7.Y'<+$XXAK*ZNRT.T9OYH.OH?BG9V#3%^UT_TYM5Y:+8]_T\43MTI%07YY@@DJ<"!7[JAV'&HBPV&LEL0FSJ MV]]SA8$N2B5!)U]7(,#4]JS\$YR&3227'EPS?_U?7TO MUCKT];'8CR8PS$\[\_K4+C3_UW.UJ>.EW]?>_8>[@Z$X5][']7I3K#>&KO40 M#,-JZ@@!F'::"N_]T^F0!@-9K7*VSJTY6TK6B%#=C*NQ1RW43V?M?7]\^+5X M6NI.,' %/+? U"JHZ7K?EX_:N_OUR_UM9V@Z0.W.BF^@>"XD!ZK>@-!3J-N8 MA'8*=W;5^51N3+ #I1M]V,Z;W26$[YO-O1-R70H]/NFG;C/W<5W>E((O-Y_7 M5:>^A&1AFD@?A1@+A&D4HBQ/8L2YQ)2PD$8$%$FVY&/Z3 O-%5EY1+=C@1:7 MV()KYA;/ !G,,.SK2/8<77FTYLG;,>6IOWH-6Y[F:Y)*DPNQ<>1KVW(QJQM^ M(53''OJER]D>RNM9@_7\0;6RVHFJVX(]ZY2R=\^;+^O-[V)S3Y9\$1&1I&F. MD0Z@(2SU[%PN)$JH5);+3S(A0,.O30E/?EBOV?!$AP_=M:UFQ*//F[J![JO8 M>$^*&>@)WA!;T].\>\2@)_L&K"X+WFT7K"\M6/=#8%F<\F&2.SOQ&Y*=^?0/ M ^,T$@!\W^)8\O"PN2^J0AUXJF\O[*;:P,K6SKT_]:'DX:$4#WHDVKTZ#^O" MA?UAN?+:F9F>;JD).**<@\+@A.( !> !Q1@ Q^5>8Z+:G53.+3K?065$K(-S MRMBS%[0"NFZ_0-=]UF*D)]#UG,9@ MB-O>GD#'S[C*CFD.&:+3('_!!9$L%AC%W)<(^Y0@$LD,95% TUQ*GU.\*.IM M@7^_)$_FE+;1=R]OOGLG'%C'(B[-F.G!T,R!=P:)R[R9EH7N#(PI4V?.2SQ9 M]DP/R3=.H#D/PG@.S<"[%HW#UH]/UVSS3%:K5^WS_[VZV_P0Y:^*E#H7@&\3 M#)>;VE7HW&=Y6W;J$ZGW4OV'5[/DM3P!>GH90C7NUT^ $M#U TP;T$4'Z[ M!EN&-.9KIP43^J!Y%O!5R^(R]D/PYY6XDW4N_;O7FY7:+K_7.:%AD*?,3WQ$ ML&YJKAP#E''Z_S7W;3URXTJ:[_,K!"RPVP*>+S-(S\ M)."@.XL16@O[AHZR1CYI*C3HBU=35Q^ZI@^%'Q[1FEE0X$@7, _0EF@W@A]5 M,:4!>.W8M&RN:L=&**U;.S8M\D7MF,$C=C;]\=1HY(T^X"L.&R*2D(>10"'- M='^")$&9"O=U&^R$4S_.HS3<'/8'LC,SY4L2( L^$C+^=!_T(QYK:/5;J< , M]XIJS.QUGL P,^W14L;:4'-GG<.2.#+**P16M<5A 5^;X,A(>%#]>W4H'M\> MKD(KW19J^3XA+,&.Q<$3+[R8_BZJ.CM;M](S0A732:&_-W!AKP#&S.-PN':G M(_)%%0LS>83FVU4-Y:$?V@WGZ2F67DS25.5X"G.\2=-H.? M]RV:7_.-U4MM_^_ZYJ>Y(/PJV/ZQT$A'="(QG*/,J2/ TIM2I,7Y+K-8\CNF2"\LC)30,SY>T;9BR+XA=]JV:!T5_N M70&W1./(&KHO< =U6?-^XS4LW33WH5WBP]?>BVV: "Y0^K^&AEV#"2S*\Z^! M)UCC-0P"'JQ"W&ZMJ3OP51N6\9QE>F&O(<.HVFI2%G+DIRP-6,#2./?\.O(-[:2K&N^Y(*^MZ]5?;1%NJ\.= MK &_5"37&FIUO]_Q#>%IZ@<91@F))<*"A#J=,D*"^V&&61 E.2@^&B:U>%"C MUCRU)_E>[ODST_',#U&,]#F$*LK,BMR(#[T\:22OJ=:[KXZNIPF[1+:=$LX9 MLNT@H961;:<$OD2VG7S"(FOJK:"'#T5U*.M<%Q7$E0>]0+[[-6[%@!,#/6=+T3X3I8;_6@:7OO7>H!D)WE3A]VR5IS] )+WC*3=#27:V** M]5*[S&0YR_0R?,2R.(ULR_K(A4(D(4LDC2-8UR,H"Y!/VZ[GT?$PM>T-7W4Y#MS3&/4= M6S44&##V!^O;++Y94HE:5#RZ]:D62KGHAC-=AZ7 MT#"GFMDDD%)$"1)2N2@<"8$HY@&*?$Q\G*R=G.@#NGX;1818H9S63HR!A#&$L(D03%JI_2DG\G 8^ MX5U.NIG)FQ,W^O3/D])A#N"+^OTWG8C=G)_47-06(3H6@ U"S/5JYAHRT77L?&30W\KO8F-?3[I-+@+4; \KOJ/&).>-V&)&"%7/0I@<]@ M"0JI4V-[Z3R?]T6;*[9A,LLPQAD*4A(AS"/=U#7#B"5QA%D81DP2V!YGF-CB MNYDF27NW+QZ1BD&>[!/A1A1FYBW<* 'F'1KIS]+C3F0=HD-.BN8*(7*8T+HH MD9,"7R!%3C\Q^PCV0Z$^<5$=6MC8!_6];RAE&$=!C*2?) C''",2IQ$B#$O) ME3F3U*A7H!FYA;<$]:';MG?HMFU9Z$">;SQMY-8'DM<4"#Z;G:F6F<>S'?4. MWOG&>W"M$>M3VIF:<710"]30G,/:$8$!Y[779OE51[8C$HVZLD\G<;Z\?18/^]^W^UW]7=S)_[-_$F]T0E'Y\I'\O'TZF*8-0^==V-FU M['@=/QY_%CK*/[*D]T6:*:_ERE-L3293S=?FN$-<6I' X]A%= A*![95AE4V M,)C8:LG MFKHYP);SV&W1?K:Y&I\%4]DJQMR?!&EW)=/NJKXCNZVCS59#0_$ M=+U]C59Y)^_5;RM)F/[;QV,#8I_&>1;+&%&9Q0BS6,,&$((R&7/"1"Q%(B$' ML^Y86]B)M8S>>$=6O1ZOWHG9&Z]CMP/^U.5V/8YG=(9V^"+-MGJ_YO7 7./: M;P:\J72O1$>;4(>,K;II=:_0UYOSU^;*_NC51JYB<74Q,P M2KRJG_K4O/_OAK.;WB6^'O%Y7Y3'7[@%@9BE)M?7^$:T?\T=/D0M@Q?XH$EL M$YZ?GK8-2*"^/-P7NH)1%&PKJDT8!DF291Q1KK,E_,#[2X MS6J3>]OC'+W^ZM.-9B/G MV8V:U026^Q2-JW4G_T[TXGFX*[]N'[\=WN[UH3=W[HZ$//&4>TYKA]L2-+H#;$WLU MP/Q> 1.\/^3'0;BSO9MJW5F"62I"F+B$1"8HDP M3U,-:*TB4HICG>M'!?5AYPZ71!8_;G@K*E9NOW0+#K+6AI84\45OHU'%8+$H7 JJ8Y+.!KBQP9Z7"%??>G*-FV$E_*+1/' M/U;M7ZM@$^0XYXD,44!EHE9;]O"X_O=CI25I]Z6VC*14D /&JW>SHPUWJ7.':W^ M^M:W5?>73MU_[ZF[X6SAT,!4+TL ,\_/IPPE1-1H&&\61.*JYO"]Y+BKY2 M/JD&]&_8ZFK*C\=TC%QYPE3%*]*9A__24O:6ZIN!ME+E-' M/I.W7UED[D:M$Q7HCHA8XJBK39<0;91 Z*3(V@@BRI+^P@U:?<@H$6P?JS\Q5+J@5 MF#-L&+GQCJQX-2\W1W?XZS<-.#,BB.'4.YVJG"%\PZDOBX(O)UJ M+A#B+:>Q=#C[XE&??>MRDT]ZDUY[O:_B>TOH3JHPMF#;[V3WH?@L_CP\_!2[ M'^+3OCA\JS8QS4(_30,485]%CTDJ$,T2C$0>9$*]O2SP0:V:9W&SO#-*@,YH MEFX-7=-:&@,Z*ETNK/GR-&,W7LO:2^N2[@H'N0-.5>#*0Y@[FXN3HWZ5W"D M#D$@)PGF:(2*Q>)JS/S35I,R;GR!^N'D L;F7,6L#83J3-5DJ"7:6+EG M0O#JO6+K0U4]U\5:LA\);7 L/L&/#TN^B! W%%&H@I-JT]LR#!K4Y@IGNNCHZZOO$[WP@Y1 XSEM858M@T MP761PHP5<($09OZDY4;D''#YSZUN5Y5F,I )RK ?(QP07^TM,$64IFFL6S1$ MV A$:)C$P@;_"@3&^T/3!-YR7=&+8?P_2UJ8*0,%A0?O@[*XBL!$U#X^K[F2=]'MXG7P>I'D:<8H8)@SA3"H#37R& M>!S*-! ^"S"S7:8M^%EU#7]J3^CTHC6G2L+5NX O^@MK>$Y$<&+MQNLQUZ(3 M*_9J1(A:ZP_.JP0,*&FU\6;,Q0W5@D,F=:R^9IN_J;$?QZ:S>-,E%4 M8L."G$STY/=ML0&W&5 1O_0:2V%5K.#.BZ[:. RGBHK4<[&G+ M0@BA0C>V?Q(?]U6U(:E,L@!+% E]=<)2BG(1YHAG.:,R3V1$,:0!X]GL(%< M[\.H:'F[/;C6X4S^, A]+%F.",M3W:DK0#1,,:)YRDC"_)@(D(^TEQ_N"EW( M'[,4^WF:(RQ)B'":2T1(*)6UR1Q'(J59E&\*<5A*^B-(_F%]V; M^B+@V%#D\.*=&%FD,1%&T!X5=<.5\AKOV\Q WQ1^/+C^T.#]=TERQBN M"Q+69)##S7NQ1VB1:$HU)9+1^7 MLZVV@@P*TE]$A@=9X"#U7D^=Y_8?Q5:W%GRBHMQ0E@HLU XM3S62-/$YRG3' M/XXC*7">I)(98I5.D8)\A595^SW:B'5(;+I%NG(^VQION-(L><^:)^^W__D_ MLC#T__7+_7]4]8_!OQJ6]4[J=-Q$7>H):*T],ZVI>C59[X^&L.']Y:3X - B M1VJPPRBR5@<,D>$XH@V';W\2Q92G MN'H^ALR:O>=ZH]: #'\5W_>E]F_;XBQY&1IL6&AW.AI95K$P!VBIT\,W<46O M#OW$/#U9!4 6Y%:+D.Q5T0^A9LQB$6.]49_2_DF4[UO#($&6Y'$<(T*X/@/W M4T1]@5$:IQ2+("$L,>^3]FKRA3U/1\U[#P@(7LMO$ /-D IF]B>!;$*=UY(! MPIL9$MJ%- :O#A:\#$@P&K"\?F:](&6 V[/ 9&@,/!AY^X/SZJZ\.WPKWY7% M8_6%WQ5'I_/YH'__L_HJ=TQ[G(?#3KN;]_ORS8^2_V<)BTX ^Z'O+\R57 M!9/J%VI?J$;HHDGSJ,;%:YH.AAW3'.E ^ZNS 6SJ-.ZE&!&@59OLI4KLR[%N"S)NC)F M5L=!G5"I6U/H*YB_;P_?NA#H=*G <2Z".,E1+B1%./(#1%B*41ZF&?7S0(02 M!)QC2GAA4VO9J-MU/A9;>$&WL0+'[7!)M#]5$QXQ[W#,F7: M4-G=-M>;)OLK6N<9*V.@,9[Y\_ E]VV[ 7V_K1C9Z:CNO?I-M8FY2)A,,Q1% M,M< SQ3E4CD-/\Y8$&92\L0HN6^$QM);E9:JUY!M(M::L/E"/*2=Z?78@FG.UQ7I"J/Z:/374-O%'9]+='\BA3L,Z9ODD.94A)3XB M@48H94F*2(BQSC)F-"!4B@C4^7> SL(FV"9E'LF:I/J U&2V'CL0'F:+-G); MI#B-2N4LG^DZE963ET9%O9#D)S-^FM 2*X)-@A#N[Y&>U1YR5&;0WF=/.U;-WZ89@P+CB+,J8I9?8[R-/81#6@>XI1S(D' 7/:L M+&RS.FG!^ZVL*>NF=0*Z.P MCVII34#VZXS\];#91Q5F!=,^/J.=MSLG^7>AFPH)?JO<*7D47SL#K_^HL62" M3R MC6.DNYJ]*.5#'1Y8VV9N;DD=PIS;A5/KF/%:;KPC.\V(N@N\.U=FJPE'#@Q, M?E6W9:NA[[6[0OHMSN^;N"ZY[V&YRE(DTD1YDDR@?Y$JLX"^[,2=K,N.:H"%1,2"9"%#(949PB'/ M4*8;C4>98$QD-,ME EGR!RDM;'::6@V-5Q>KV6".#NO(;*%V(CG,!$%"@]?; M28$<+:S#=%9=02?%?;U43C]@VVBIJMYT-;KLI6F(W)W/$RZR+(N0S".,<) R M1+D?HX@$*G(/& X9A;51&J2UL,%JREZ/M#ZFKOMMVYW2CRG-\#S!C2J !P;6 M6K!H?C0IG[/61L.45FY<-"GR95NBZ4?FPM5\V>^V[*6781HF69C'*?(Q(0@G MD4"$,HF$D"&)HSR3603+6QF@M/0:? (#-H&E!6K)S(J=R ZSX1/)&Z\AZOW1 M_G^1;-%)$9VC\KRF\XM > ;$'<;<&7H ?O=6E_X\/#U^*KYOWQ05+_G['7DT MO7N[_O3"UE@3]1ZV3_H\YM/G+Q_T.J,"%EV)9'XG-R#X])W' MINVHXFI<,*M;N8$I5[N5&Q>I?RLW,=*B./Q#4>Q_J%6V^K@G15=&++(HPCH_ M3$0APG[DHUPD0NU,9GYJ MKZPZ_/]EFI\[[GK^5[EX7[_)^:^X3-=D_WI7YSUEV/8SGQ''?VA"PA,.[<=M M(3X=37+G!2L;YC3@Y<- M+G5>UH/2M(HRXYPPKG:I-*$=.@VOK32S)*!YDU345SSM'[0>:&.E://$_V_9!AZH1[;>/1R(@L,=[&_ M98=GLMN]Z \'&!=1T4ZPWD?'VFWS%^#!#G:= L=TD+B_%/P38@CGOI)BB*?Q BG MK#Z$9HA&G%'B4QG0&++&P\@O;< ]D.\]W6T?ZP^X\O2'7,FMZ361I6K-EO[E M% 8S^NMX0&?+_BM$I7^.Z ^\Y-NIP=%Z#R2^ZF)OIYC7*[WE+!;WR/P?#_O: MDP':=YT]M/2M\1'X6X>Q_84-T,3K7,KI%=Q:0)@-#\OFM)/756GL[H7/9EKO M.OB: &>WP%<'V"W(=0_C+6][C=X6O(96O561]Z%Z\USJ%H2;F&.1I%(@EFA< MK013E(4N@;"38_O?8U RQH6/%(S!&VG M/JU0L[77L9* 47:KG99ZK9P&GK=AX,9K67#9]MQ87F>MS:B"^PJ/J0@,WMW(39P1;Z4V"$^MJEVYQ,C'E,L0.%UC15H9MW+J 5F[SV-:.KUHE[_ MT./CQCMQXA)B%RJ],Y!=8\(KP^Q"%7()M N>8=ZZ_WE_$)6BHQ/*>O[JLS@< M-PJ4JT@@"!"AOD383Q/UD\A12 D+&:>AC$)(XIC^"A5'/7@/A-H[M-D-,T##E#.0D3 MA#%5/VG7XH<,^TF"92K D 2OB2PUZ!KX!E'N\?F;]GH%O1LH\AL;8K[__]YF4RMYV+]WRB[,XHQ%%<18) MC0@4(DKS#(G,3ZD0-(RE47GT"(VU5M\C6>O%][5RS-?>&2);+KW&TEJMO /R MS%IX7\^Y^KH[(-2U97=HJ.4UG'J9WT@E[HYY()M IDE .45AE'*$4YXAJB)= M)%E"4RY$&OL@-,!+$LN?IY?/@GO?6\+0B[1+E9AMBN<)"C.VCI9W(N;P0FQ0 M$%?W7Y<$UKWN&A3PXG9K>*1%F*N^XWVIE?^BS\N^:W-NPR*9JK6?2XK2D*8( M9SE&N5!;SY"'<2Q#&?#<".!GG,S"AG>BZXF.,"!4'-:.03CL1&:8#?;$/=*T M"9&'Y08$RT[DMPN;[?0 "Z GQ1L-I8>?7B^HGI3@++R>'@US/Y6*&360^IW\ M1/ZQ+[OHO47*(H+A,(\RQ%B4ZI,NBBB/ B3B($L"$@0I-DIW':6RUKX;!B0V MKIAQQ^-,7,L-N3NP,"-)QA9_-4%OX5?_.BWZXW.O8H!&XG7V9S;8+MQ^3[;E M[V3W+)K\&'VBW::;;D7U29#JN13\KO@J] V:+G4K^.=]47;__'=2;:L'??*] MD3+-DM!G"!-&$,Y%B@C'(<)J6RQ#G[,8@SKV..-L83/7?'HUHS=M1EA] =1C MUNNX]>JSWY;!>E2?8Z]FV?NC9AJ(.NCN-9KM+'[)RX$YI?Y[&5'ZE+K!>Q7G MJG&TQ7''UZH[(^?J?+VAEY1PZB25C4:'V5-0G*9ZQX;5_3WS0W?[OQ%$,:LEFQY#3; MP$87[G(.0-37SCRP4V0791FC M?A8@2J3:E^&8($*D0)R&F> B3[%/8%G-U\BL& Z\%7++ML!\PP'EF"WQ\T6& M&69'S^L(+E"+,"Z3LYSCJT16SB\>$_0REWAT]#(U")M<1A'')$$TT\#KL4AU MH^,821F0B!""DQC436&*X,+6^JK>X.941JAVW\6^0%-9]79:-#5F=[J!FO5T MT<%ZA0;.37V"W%^JJ_ V?L]SC/^GU_I_U;9;NK]CFB+_95^KS%6GB4]WM M7)(\03B/ I1'$4,BH(P%,DF( *4YC!%;V %\UC:NO^QMH9Y6.NUJBX$;]C%U M&>[.'2D!N!7O4=6;[*83>E4]UUG_-7&'FVX#$5WML,=(K;N=-A#Z8N]L\HP% M8E91%;?\']7]#_:FZB[*3?&RKCR[L&U^T6<%&A[J"$)1>?>B_+%MOTP 4-8U MP?G9SWGG;S_ M1M3;[H%OZ@-XMF%8TB@+*(H2&JH(FDN4,\)1$F0^5S_EH01A8(*H+VRQQ_:V M7;M@MG]Z4I]T57?;JVJ6O.=*#=@6]3'YP_U7[\2*U_!B'BL8*6D 9IIGR!'Z"'=S&K;9)J5NDW!6]'\_T-1!\_?]CLU1Z5O5 XO7_>[ MW?M]J3MY;I1CC)1?E(CS3'E,$A&4!*4T[](!2@+ 4@_85=9,>-]UO' MS]_T64V?I?_E-4QY?VBVO)8OH$N$:MW,!RZH2YC36T"-%DVOK93AK!4VC/K* M#;*M5'/9-MMN&HORU]LOMQT,2!10+I,\0 GWE0-BZC]$8(Q$'H=^IM21<_-6 MOZ=YE\Z+4H0 A9T]><=-?X84P)M21<.F1+4G": FU4XBNR+4K^*Q;F*A K1; MM=:69+ M\/6*4"]Y/*LZO?)G^,'LNS_5_O"@XILWY" >]^4+I.?!U8<7MNHC3:\C"NAY M<%W:Z:/5V8+"#/]21J>]#T:EL3HDO3[C:J>BHP+UCT''!\Z 0GO;^MLL#J(, MLQ3%3%*]4DJ4)31&$>=Q*F4@I#!'AG@U^<*&=2Q4?FL!&/;6?.6<(17,BDX" MS8%">PM?26=(.!,*S4!2.RBTMX"U\O4SZT.AO1U9-8?&6+0)TA%V]6:WK\3# M_E/Q??MV6[$/!=?EZ,9=@T;F6-C>-0E MZ Q8:<74%=R @/HFJI7D]6;X8?M MD]!=A3Y]_O+!TQRH/SRKYV\\QU:#HU-O%X'(@/Q MSAH2F8RW;ABH=A'/3'O-#\67VY0L9MU8&8P&TK2$*+2MFK?$41"H MC6Q$@LPGH)QA<])+7S<]?2?;LD:]8]](^2@JKQ1-\:R*#%G70=:FJ1] O<:K M[ )* Z^Y5WOJUGS<]#MT'+L _J;O5,N*[(8SJ)WTUAU7Q8)]=0<(__*>NN,* M,>FG.S&#;8EOVYM78[)MB\=>2^L>;&^"LX21A" 9B%#7XF.4QQ0C*1D)XS3- M<;=T-+>TVT9^90G.L$YDM:\AISK&7 ZVOHQ()R+T^ZE8S+ MBE^ Y,[*?DUHKES["U##90$PY&'KW!CEAS3FA]!K]$?]8M6L+<)GQDFHXGZ, MU,9=;^4#B?)(4,24>XBS,(@9!I4!CU);/N]%0TX=B7L==2 FJIGFS/R#,WW M_,))!WO907%UM'4YT:YV#^X 5$'BNLM.&:&U=B[*M-A7,D\,'H*?HK_9WXN= MT*@"+9X@Y/C\ZL.+G\&I'43QXG64.P33\8-C0[FG3])GBPP-_VVD!1V3CTID M=3Y^?<;5#L9'!>J?B(\/M+F.UN7Z'YJ.GOQ#H2+\0M0G/ MI:C-N-HD44"C3.8H3>(,82D8HKHM-P^BS,M=3*> @"?=L4L 6N9 MSQ,)[*>Q[/Y4;I_$5^7_0#=UKYY:SD'4A#Q-:8'KN $I7'4X>C7[NNV-KHMV MT=MH8-C0M]37_4?UT[_]2_<;]1]**O%O__+_ 5!+ P04 " E@JY:DT#? MS>)^ #WT 4 %0 &-D>',M,C R-3 S,S%?<')E+GAM;.2]67=;29(F^%Z_ M(B;[=2S#]Z5.5?6AMAB=44@:2='9W2\XODKH! $6 "K$_/5C?@&2X (2BU]< M5U:=2@5%4G!;/CW3/&7/\?+;[\L MOZ5?_C:;_WW\W?WR<>*6>38_!_B/[I^]G%U_.NOO_[YYY]__>'GD[_.YE]_ M983P7Z]_^R_K7__QX/?_Y-UO4VOMK]U/;WYU,7[L%_%CZ:__\_=WG\.W=.Y@ M/%TLW324!1;C?UUTWWPW"V[92?U9NG[9^AOE;W#]:U"^!90!IW_]L8A_^8]_ M^>67E3CFLTGZE/(OY;]_?'I[9TE4=OHQ7N!_SW\M/__UY0SQ\-%]+=1V_WIY M=9'^_2^+\?G%Y.9[W^8I__M?0ORQ@*)6PE=K_K?;?_SK[?(7\[1 S'3LOL-O MK#^CK'80*>G',DUC6G%XO(-F=.A8I_/7K[/NO^,&H M%B;*%T4LHA/)@^56HCF,[NO]]P5_=R0-PPVB'>X$14$8+<&X&,!GJZQP61G/ MCB)[<[6[5&^J]&P>?IG-8YJC ;E>SLW# _7>A>[Z-WZ]<'/\( C?QI-X_:_S M?'9>0U?+607)K=2"Y/[E%^0ZI_D\Q71V4Z%BS:S2P\V" <.$XHS51$IT(5Y=];>"<N@ B!(.BR0)LHL@ RTB_K@*(.\ON! ?>/AP. MEV4C8/@R=]/%N A^#6C&D7C%,R@1T$\2.H&5-A=H,Q6S]4[F.J?#O95W@H1H M'Q)'271@5+R>+L?+JS?C27I_>>[3?*24#"3I "02C_XS4X" 1G>:>81W,DIY M<10:[J^X$PIDNR@X2H)-:/]3^CHN0I@NW[OS-!*>&IUI1+59"<(%B:0K#<1+ M2@/5@B=2 0%W5]T)!:IU%!PAR2:0\!9#^CF:L$[PGU'^Z>7LD@">VB%3:9=%P8L0,1.^%$MXZ3>G)N C9?W(^W$<4W MSN-5KF)M"2/'$(DZ"03_%0CE$?]1X!\YA(S;(7F5*@!FR_([0<6T#I4:LFT" M)&Q,FT)&"_QRP_S+[,_IZ/,1:#)4] A,!"2:S!G2H&;<8;J,OY0P:O:@\MRQ( MXBRM!XQ[J^^&CH8SF]5$VQ)$/LX62S?YW^.+SG7"I92@* NAC0.16 :C& 67 ME*9!)FOH<;FM[6OO!H^&$YZ5Q#HP.(K5.YLGU]$MJ*8B9:0V.J1;)H.A.$9A M2N'A&(*T21X'A\W5=@- PRG.@T4WL,K+#>GDX[?9]#H#(S5-.D8/6:0(PN/! MYQ-:M92#,#)@+)6/BSONK[B;ZAM.91XEPH'5_SF%RSE"ES+_9;R7BQ$1/FB1::D5DR!4@;1)'BAB65CEF&Y MUGAL]=T@TGPBLH)HFX!(N<:=OW3+]'4VOQIY[C/QV8/.$LDGSH/GVJ!3E#/W M)"0KCSM/'EETM[*IYG.0APNR"1Q\/G>3R8O+Q7B:%FCIB"8D< [420/"F +C MR,#KR+--B3I7PT+<670W'#2?;3QS/Y;>7L_,+-[T: M!8$"02\(0^(00 CFP$IF02D1@PXJ,']=LQ@^&0+*^F"2H22I&K#87',W-#2<;CP&BG&?S->!#?Y7\G-W^!WT$'F(A/N."#3H;Q> M3(A9&5 NWNJL19+BN-K;+0OOAH2&DY@U!-H4)E;O3%9,.$$,3[0DXK/ \-DB M$X)HD,B+??GT@QW?XC8,?9J,?-%VD MB%\L9I-Q+ _P7[A)>5F.D59:+OZ8NLLXQN_>Y637I]N[?WR=Q]T'LG/D\^_+ M!7QU[F+455S>&Q*N+5(%<1]LB]":^MF1A]1=^M>V M]8:-B"+16GB@+I=BDH"!6/0$@S/.#3G^[B;(SN)L^=+-YU?CZ=?_X2:7:42M(L9)=,P(3\A6 MY. UB@R=>D<)54:(VC9G)\):0--1$)CUK8TF0/8IH6S& 9V#PMF()9XEUQE8 MCL4Z"_3Z&5IGSY.E@?N$?ZF,IKL4#-,6HS_8'"'? :.JFQ/]VVR^_)+FYV^G MWY&18F)![HQ69-@K7#RJ>O>@WRY1^@8IF-&?T@Y M6M8-X&7M]DV_?DHAH8WTD_0BY=D\G4TFLS]+1/)F-G^)=(V7[V:+V].>"2ET M4AXLD\BF2.@4!L'+5U(DC%B3J6UV#B1UF*8<_:'N%!IK )AG(907Y(M;+G^; M(SO7A5A,!Y6-T:"E4X#.I@/#F <=?;"1!LJ>[/ESD O^)$7#>D\G <5]I[V> MAAK V\O9M!/)W\;+;R\O%\O9>9IWF_.J;8BGX^=L&M_-W'2#K^N](H4W MF2@!3-FP;O(B+(-H4$PH,T7#4[T[#W+;=J9NF,9M@[IP_6AN?TS:%2:GZ6NY M"ZL:0&SAZWU:7K,6M9)6RP2!$W02.%$E6J>%219B2$2EIVJ4CHDEGB5NF#9R M+805=?76@)DL6:(I_LH5LC"*&/AS+5 N4I'R<$"!+6EGJH-P.D3#/*^,N)M4R8@Q#@;G2MD1J M!'MDY>49CU1I0RQYJE/0(8#9@:QAS5-]'-761!/PNDL^82K(XEPF+GWIA(!6 M.M(,- 464%@YF7Y*'O:!3/7"S/X@<[AT&SB3[EYV/;PM?3^;ANO35F9*G#+ M%1ZY(F%DXK6AD&)6RD9I&7FJ9O/XB\:GJ&OA$K)*)41/"FD@[[!Q279M5V^9 M64EP9+6G)E$-.0:!?AQ7X RA8'2**4L3*:T='NY 5@OWEE7 55L%39QN'RY2 M:3L\_?HNN47Z5 8N?]F0L"2[,&)1(S+C(OJ%39/T=-"Z%8%0=6$WH09^FTVBW^.)Y-1(H%*F1PH M[TO?4J5P((+P< MJEQ$,%EI8$Q:JQAS)M?VG1\EI(78J\[I<[28FT#+VN>246J/<2-0Z3!H-!Q/ M2Z,#9)(T"B(K*JLGH'?W;*L_ANNM@'PO0380?;\;.S^>C)?C+M'=-0+X-IN@ MT!?E+%Q>W8B&2\Z#SP%L4JEDT2U^A>B6Z%E93KAAI+8+LBMMPT;>O3]@Z45% M3=B>#<[NI\.$8"&*S(!(AMX[M03#/R\@14*=C='X)PP3V!*FZJF@"7;A+YI>/LJ(4=RQ+#ZEKG: ,LN(D 6*#L)'* M8'WU.[%MQ R;;>[/0%40?1,HNIOXO.;HZL;F)DM9E P42QC%9%VD5&9-H/65 MGE(5GNS/?'S"^3Y%PV:<>\)3124TD'Y^K);] 4]!Q:ADX,B3)R B0YZ4I9!H M#-F2R"BO[93O0M>PZ>B>X%5=(0V [!';:VQPMIO+R5WIB<_*!4UVH((,Q@<; MDGMJKDB=.&_8I'5/ #I2V WDII[< ILY5Q9-8#X!-:7 TS&+##(&P5 ?E<=- M(&J_+=Z1M&;<\OX2!WTHJ64G:X,E&KR7W C(02H\XKT'5WJQ2XO!K94ZY%R[ M5.19HIIQW?M#7%W%M' LSJ9?RQO^5\DO-[APP;C <@22#')AB09?8A/-G*$R M"DM#[1N[QREIQGWO,?UYO H: %)W);DAKPU.M'/"4,M+3P@/0I,,5M,,R?EL MM [4D.JV:BLUS3CL/1JI.JIHXB3<8&/$1,Z"> 6.15LJSPFX&"0PAS+*(2MN M>KR7:<91/\E%S%[";L)?/S\?W]1V%L<0#^DT#845(G.6TFMP5I0>5^CY&5(> MQ4N#MC51I53MU[U/D#-L$C&\>WTI;L8 MHZ&T=."(<1.<0,FRNJ"?@U!![&_@)X?+\ MLJM\Z(+),LIKGKZEZ6+\/;V=AMEY*@T/WJ?EA_S%_1BE(+-7N#IVK8%%-/6*NLC";,W$-1 MC3+S.L?R_I.XC)Y@(H V&_](+&0N!;6Z=H'=0RJ&337U!* CA=U CNFY&'<4 M8LY"$P^4Q3*O$PX&>8/24DX*D%((20L"5MW8BZ0Q&I7)/1T). M7(7 ZY\8_4\*NILP05E_F'?+QBXD_ICFWS&V5#9[$J(^?I?%85]33@\=_E:C45^.QR^6TV'_\CQ9&D(6J5 M!7!+RDLVI\!X=#558*+,<\M&U@XSGZ9HZ/3724%VE#H:!=?;Q>*R<.(C(92B MOV&)!5':SII,RF-[)Y(T,7-5.R^VG9JA4V,#@.H -30*J,T9YL;SY /-)5#" M>)@Q=&\=QL-<:BTQ\E$IG,)<[3LYOL!KXQYBZP&?N1'&$SS6 MC8NX98P$RZ@"KG@61/&@>GR@M,"1S[IS+)HK^4':0U]5C>NQTZ#I*$6U9L#L'O;+TOXS7H8E!@]I_GT#4[=^/IB#HNE8@$ M:'FX*HACX*5/P$*45.K(C-LISM\-&0\)& 8>=73Z$"!'"K@!CWC-R._IW*?Y MB#C<*,R6V3]EX)!E'DR13LA,)":,0%:J9QHW"!@<'<Z'+;LG=D(Y(+%I7HR$1)X5U>.:Z M\)S[NNMBP]R0U4=&+\)MP([<'+P80Z2W^.5B1+7PP8H SM$(PMB$XF$4\."5 M64GO5:K]]OLA%8W/[ME.QIUD1&PQN&%H<]E*V1Q,%)F@B MW'.>5.TRM_LT-.*M'JC3!Z6U1PBXB;N#-0=O4%*/]61Y_2-,+DN"J/2IQO^/ MI1B=\6B-T P4M257I(L+QP-8X11AS%K*>D+1/F0."[3CD/$XS'I34@.FZJ8] MR\O9HCOYUY/L;@4H I[#I0.5)*4]BS,/#/*T-;5S,,\2U8 MU55!$]:MFT7D&0IN0U<@\# MNYXD:%C;U"^FZFFB"3/U.4WP1U]_2U,4V@29.HOGX^FX"&HY_IZN^6(T96^Y MA* 8!C.L/+I0) Q,1G.>3"\]MW[;I0-6_?8+]1ZT$T#INR^J$9)R.!(\*!R M*+.!*0.CB &B@W>)JB"J6Z_[- Q;XMC_(7BPO!MX0'57? #Q=P 4FY'M:YX>#M%JX7?&661 M+<]<0.:E@5U&%ES"4YFJ1*A4E%-1&R[;:&FDF+H.9JH(O DWZ'JN[^SN+K@^ M8@G-UEB>(-+R&+0.IFU]U\BS=-TNZ;=9Y@#?[2LH4 MM2886;AL2R9/@0L88SAN1)81DNQ:MK -M3=Q#J]97._@%QC MY/%R9 R/BA$!U 3$O&U1R=L(:61 NZ:R#M.W$THA1KC?0J,BB%3'69@@=)"ALY)3!.E-.M#?O!@9;4G6-") ,(4A;MS<1X4&?UMO[(VF(7N26#C)42'$E,9AF(H^8=71\73@N(_<&SA8=^EOC$[K M>!;Q^_,RG.U56OWW1G:.<.&]LR"=*:.6!0@J?=2">]"[8SK\50W4AMX M GB>6,.-8_KLNQM/RN.#-[/Y9S=)GU.XG*]ZG,;_<[FZJ;OIZYV%\Y$S BI0 M=(T3LNPS-:!()EEG88VNW9ZE%NT#URR>&'-[0+XW #0 _$=8OF%%2NF(0@8T M>MX@:.)@.8G J98Y9>,#K=U.]0ER!BY_'!:>M=3T,_54WHP4'K:2[CFJ] MDX1&.S-XR=03@2ACJA2YB>#!ESICX7G>H7L(>\&SLP;ZE<2 M*;9Y-BW;MNN'4-I:RF@=6&$("&(T&$Y9ES U+"IAJX\">Y*@1K!T@*:W@>9H ML3> H7L\K)_#AR1R5 ZCM$!,R6Q:,,E$('C 6Q\EL:1V1=RCA#2"F>,5??]. M[6BI-P"=C;9OZT8'M#.Y.4#4/H.PTJ)G&6+)(J44+&48\-=WU.\2,2QD*BAV M>W.] Z3< $RV3,!;,Z."R\E3"Y1'%(W)R(QG!JA,!/\B$].UGX<\2="PT5U] M^-23?@M0>GZXW9HQIM$X*UZRV$*5&BB,1:D)()E!&5*K& VU8;4K<<,^+.D! M8KUHI0&XW9]OM^;"ILBE*FV6M9 @%)[^%N4#4KELLPN$D?KO<1^C9-C7)O6! M5$'>#:#FD?($A^AI W\.2)D^%"B87>XUV561A<%]F!20[DZ2U2M%&*SVT954X=&%%VC [%?U !6 C19Q>)C+T@;2\JAPWT3H[$_C38PJ'Y M.(?=@*?'&;0J"PR&+%AF3>GJ@9&0L^B!4"(T1BY<]G#_LB>1PT:0#2"TDOZ: M>&#YY";L,C.C%(WUV>.A$%VWZ1)&Y]F#X]ZE%%7(MGJCIV>I&K;;00,@/%1# M3:#NMO1L\66V)=O\-S>?N^ER/6B*Y92EX!0(Y24+2,O]!7JO@9-[%P:['>A=5P=U7I[9=ZK^E%#2B_$RK7M+KG;KIQ1F M7Z?=IW2GQXC@5C4!SPA3AEN)0/"@\+D\3V,F"4_0YZX=/??-T[ =%%J#_\G0 MT81!O_LFA'+JN30$H@ZB3%51X*6)($@*5+A B*Y=:==0GX93(O%PN>\/&[N" MS335">!W*DJ>S3NM+9?SL;].E$QT%YP0I90W" M1B[*2_,AGN%L)WG8MA"GA.4I==N M_ P.2NU-%Z5MJM&% -N(YIR=- E&G5/ M&8VY>GOX Y/CO764[OH\"CLQIOI[&OG+C-)BH2L6#8!:Y\%Z!TRJC55<* M(SLI'6\D-]Y?VXB!D^/[J* JD$[]>M\MOKV9S/[L^]7^PV5.\UK_&?;JOT2Y M6?'FT8'NGA6H )$G#T*D#$YR 20*0AP1Q)/>7F8\0D\%G[]\YL?Y[/L8)??B MZ@^4_]OI3=?@L[ ZAC6ZP^-GUK,JFP#HC;3>E8CP4^G% M]B&C(,O(P>4F:S<#<0+W6B&'2I<2I\Q1A-H$H$[@:62045Z[,^R^- YK9YL# M;J\J;L#EN.ZE>_=^:,1MHBX8!UYSBAY^>5QEK0'-$K%&!YU=[1ZBCU,R;!U: M.^5@ M='+)2\Z\K_T [BEZABTT:PZ"U537@/7;-. ?\IOQU*%TU]/.1HI0A5&BAYQ* M8];2@,IF(W"/"1(8E82GV@5G3]$S;*E935>=%OIP_3S M-_S^ES0_OYUEA?N+2]Q&.8$698"U*2:?9W0V$J7&)AD>#"IYF!S?>]5A"\J: M05Z_VFK &G;7Y8]([3H!?),3'BGFT,X3 B)*"T(E!]9J9(Q$*BCE@NO:)_3. MQ U;_]4,6OM5:@-H?7@A>SNM=%7[=B._%"U5VCL(,4ATCWEQCPD>!XEI&U ) MFM0.NW>G;M@JL>;PVI-:FP3LRFM)*/8T_EXJCQ8C$[((VD6(#.4GN$>>HC$0 MB)+HTM#2HJ!WJ#ZDJ[47KG4P\2STCE30$<6-7TOEP)<>L5?\E"G^(]RW&+6% M1++!KOSR\FLZN$WD77?^S=V/GQ9.5(7^^L$.:7=WXRXMS$8&6" MD$M*@0<"+C,#49(<)6..R=T20'7H:>W]:U4@#J6WEJWC]43T<#F?=TV+;EFD M41D;HP?JJ"_9+@TV^00V)&<\-X'G_@WE=OI:>Q9[(IM926%-QL]EEGD1V=_& MRV\O+Q?+V7F:7S-X-8I*,"^% S7:!E0[L&DY,$:HWCB0GE?N\IW3Q);>ZIZ M(DC64UL#J-R],G!$M(E,*0$D<8(Q'4I@9>?#AC:GKQ+N M0VD-3"3?PMGJ5NIQ0?+@>"[C:*DW#D39X;ZXT@BFX)WD&-C5CK[WI[*1#J G M>@U12UUMU/JXJ^L>!>$_+\?SA-SB1EM>?9RXZ1)]YO+$[:*[@J+&!9M*!2@M M'62,">"\]J"]H)#+ M++H/>3MSFB<9\*@!9"*C^4T]-7(H$1@U-LL..W=.AY<'W1JU_%DAO%H535G M$W]WR_5LSB[QO^*WC,IUD\GB0^X87MXO=8J6:Y,3<$:+FUR<(!Z1:T*TU"): MDVH7C!])\K Y] %M9]_J;<">[B[=D=$9@SJ,()/3!@1E$JR1!.,[R:@("J/+ M'II$[4C=L.GU$V.T)Z6U&Y3?%"T_5D+E*)6*83P9C 1!' 63\3SASFJ7H[&9 MU4ZF[T_EL ?_J8/R6NIJ(RC?=*8?;W)=7JQEC28?G19T8:P"9Y1"#I-.W#": M0FW#^"Q138;@U7#Q5+QSM(H&15UWD]H]S7B[NHB*W2W -(7"4;D'6+4Y*F'= MXNSK/*WZY8RBYMQ2+4&3K,IQ(L!9BUM9Y4R$,E'&>U[EEMON_==N,K2N#;53 MZ*6Y\*:T BY5G1_RN]GT:XG<7B6_'!G."376(7I2!,$";B8;*"26&+5X@&1; MN_+V>:J:#*U/8? J**F!..0Z6? A%^JO>5J]47,Y2>U8!L*-!8%?@BVM 5VF M*"0:#$NU6R\_04Z3T7!O0*NDEG8*=787X CY2[A5*&2:&0@?+&ZAI"%SDX*6 MTI-8>S[V[M0U&?#V!<.>E-9 P%O8*O\KWL-W]!UPKWW"('X^#HCZ\H.S:;S[ MC8W?7#4C?U@V$B:7I:?JZQ_AFYM^39]P![W.&5V5D6$ZA3)X0L14ZH\# 1-% M L6R#"Y[PU7M&96GY7!8Z]Q;H-TP3'[V3322-F6;5(9RG)6,+2W-0=!9-X2B M\\ZI"4WMB6$M?YL0WTN)S8S$.XYERS $L(Z #3;@J2K1]=+< ">.8YSIM:^> MC^\?M[V5%3>*VWV4V$K;\\N+BTDG2C>Y%N7;:9[-SU?*O!:JXR0'Q1EXBNZ8 MB)&A4'4J^Y+XH#(QNGIGK-U(&[::N## 1&RAD7 M1&) &4%3GP*:>LHS>"=23(8R+FO;O7LD#-QPN@\U/RA%/USF34"FM&3XXGZD MQ34'22-I=&OM5PJC N9<=GZJ$WM)-)#*@:NS3T)<(Z2? /8*2^ M4#BWE^G3>)-GZ*;.W[[U($:D9"2H8#%4$L:BB#0%HX5D3#GNC:@,J9V)&[97 M2G\7SKTHIP'4K=\1=0_&XWAYB0J[OFAZ<;E\/UO^K]09XQ%GP41F/%#2W63& M!(9P#LDZY;*@7N7:'7IVI6W@.^=^H/' V^]!3TW@KPM4[H4G-R(C3M),K0$O M9.GE$E%:@7&@SN&6C9*9U$>.9#M%PXYFZS68K*2&=D&U?.GF\RO(L RLS!Z6=-C$8:ZIW4-Z)L&'-64TD[ :R(]321*'6@ZS+_5Q+ M"C80%SQ$+2.(=H&C8@Z!%C5971B"D[/,NGM58A M.(]G0"J-JDHCEA R*.6H,D(1*>L[;7VG:GLKING9])U&C=6NQ88:*[B:[/HM M+YR57NTX-VE3CM>\ DV3S%BD)1<"X8$D#S-(((08)46$*DQ@B6:5:[] M4JW/$8.//O&R1-C@,?9A0F.\I;S K*07W4 ==E3B#EHIK@S)-8>,OF0BF&/ MPM-CZL$UPG%ZJ9CNJ&NZ7KC%&)W;32$Z--27Y^=N?C7+G\=?I^.,CNYTN6X0 M.IY^_8CB#Z6@^ +=]1Z-0QA/88KVO =J)LH&GCM9!R8-0H+Y2FC5UG]+W-+TL P=FR'0W /$ _;(I]0P2\\1 M5\G8K)ZQ1Y@ZF,!YFB)H(W :-!334X(BA(21SQB;%,:_L<.Y)V?,[_ MR65N,6]IHD27^7JV"X@1[H;)"$3SR"R5&*W4KM78E;9A35$?&'IX&="#EAJ- M'M^G91D%A(YE-X'T$*-T_R-J6*0GR:IDCEZ[^10/G/+>I%OD!CO>.Q$B<:"M M1U?=. [6,@F*151J"%);77GS;:/E6(-S_W-OL6ND=-(P!:1K,1 C 2>9P%UB M8HY.)QYKETAL)698DU(%!_=M2!W!-VHT-C)HX^G[V?1W-_][6I;)#9]36+>@ M.L22[/2Y-YU"(H7X9*,CQ>\NU-W?,7SS4IOIW?6>CO%%2Z[GSQ^L?K'=)[<9/R/%+O+S]67 MO[GQ=%%.C,W 9%EF,@)?-8"!',2G,+H(1KNI>**TNJYJU/P-?3(MEX0_+ P MNS& -&J*W[CQO"N ^CVYQ>5\W>+F -O[^ ?5,+8[D%C)NMZL5,;W3F9EL5LT M&I]#](2 P8,7!&H>/&,8$:BHF*=4ZE#;GCY%S[$6]#&IOIU>7.*VO%GL%ND\ MR,QUU,"UK)W,VXO 86U:-=S3 5/W#CZF3@7^&O"--4==X:W.1Q7J5V\P$YR%;/ :5-^5] M$2M5621"YD(QRXRQ03TGG6=7.:J?VV,??(M2204>BZD,DBZ'9J2R')\<2 M/*S;,3JGJ1B.W]=.\SAX=5*^\^>^K%"%O):A6PKV+WV_3JY83)[4% M8@T%D:@ DWD$+8+-/ 1/[T\\/3X#?8>"HXL*BJ2^S2:X2Q>K3WX_6Z9'/?OL M\1@W'#U[[LNL,0DN6 K69V$]38G;VA,+=R9NX.3[X9AX4$[0BSI:M1ZS\_/Q M*C_FIN790*F=2--#*Z.>^K@Z#QQV)+>2J=E8[^S>>K> V.@@D;.V*8+W-&+@ M;1DX$A,HC/&E%8E$7;LG_UX$'EVOOLMB&]?:.@?AHH28A<3#-6JP2L8RA5%Z MIKV7O'K-^EX4#OS4M3=L/2AD[T]OC9JUKC7V ?;KMJ7VT:7J]PFH%0SB!S\" MC^RS";YOQ>S]EF9?Y^[B M6WGLB'Y#-_)\79VUT0GJH S37@M423P=SE*MEYTK"CZEB]F\:SES#<+H>>1: M2>#H>X.@VH'+H@P%+U<2*6O#JX<:=9KTS6B57N[/';I0U^\!E'Y3YR9S8Y*Q9+Y1@]W[0H M_D#.Q0&(QI6!=^6=;/(4K$G1)D62J1X0WZ5@V&9"/0'F""$W )';8M#[6$^. M<&JL7)=C1!K0.^4.J(Z96RN\%K4SMUN)&7:62T_ J2/Z!C#T/OVY(:+Y;(I? MAE4MZN.GLN=<2"LE2%ND9DM'5%6:8UJC+ TA)E>[U=&^- X[6J4GQ/6JJ";< MI_MA\>-LA1RBI%2!9:Z,VF >O/8"HA1X@MN0LZWMJN]$V+!S47H"77V5-)I8 M??C4^TMY]G10]F'K9_7S)OTQ0D_\,IV'\CY/.&#,HNY5B([6 M/A-.]#+]U7CAOGZ=E_&572N;];*=S#N$E%Y!4**T(L\,(U4EP!/MI4@\ M)U,[<[H383_'F_1]T/-(P5QE_33@DSTJK<4BE<=>[\;.CR?CY=4]%F-@6J:@ M0*A/CO7/>\]KUR959W<@I8#ZGS1EW&>[TX#O<7'_^@'MJ%].@I;FT6 M81PE(F4*D5."L8$G8$7F$)TS1NE2?U4[[=U7TY#/X5N*EY/T(9]AI!7'D\OE M^/M&9X37/\HHWA17&_'\XO*Z_^'VIA=41H,ADH:4; (AG02;@X&8<'=J:JW3 MM1_?UN>BT38E^R#O0=P[K*H;M7B[M FGZG72H\'#$%O,9CL5%0\*%V[)='I.I[<_]SBN31^SY6@K(PF#!0L+Y7$.J,7X1T!ZCBWEDC*6>V[CJ.)_FEZE>R#O0>]GDZJ MVD9MYJ-=/@XWDD]]7&]-27HT@T^VF/ BZU"2UH'H#,(D"9Y;@P&+$YY$%KBK M?>=]DM8D73Y@L99P_##]5+;('-V&KC!FHV Y$^TL$<"%+NTNC 4C+,9ODJ'W M0H@FHG:-^+XT-MR@9!_T;&U0TH>J&B[7?- $Y'!+M?W#>NI7TH.5VJ'O!6$D MT=)OGCKTZIU0J'=C0*F<5*",B?O%DB?L6O(PFBDG_Q1_^>IEF74Z7=X[;Y75 M-G,:<,O8\NK">/ 9_]!,T.P"I8%4'_&S(VW--C[9 P#;H\R*>FGB*O_C?':1 MYLNKCY-2VKSR+R^*+[%A,;5!^40#5"?T+"638"PAP'SP+%KE:*A]C_\\5O+S^FOSU&. =V0S'16\IU)9L-*4 M\<5&HQ.?T(FG*:4HDXN^]N2189L]W>Z?UPB8V55*G]/\^[ALU>NV/YM$G4VZ MCUS7/G0U0?] HM)\/%M1NN%$..FE"A$<<09$CJ4W$-<@-144K;UQU8M4>F/F MIVX0M0^FMYO7(>'1A(]Y*XI;6=_5QO4 X,[HW1D)W'WGC^D8M1*6X^\/2S(L M(]R'Q,&03$H3+]21S@RR%"YIKHQ*U0>Z]LC/L'4W3>R7@4'2J /S1 .BP[V8 MYS^TY]Y)/?HS^W6Y,8KF[!"KU@17 G<.EB&(.?4^DB!D#*ZR&3EI!Z5W"3=4 MV;_W=D8(7G#*&<@N@A"BC#_#'2R\5\Z&B"%%[3NY+:3\3#V1]D'+?4-70Q,- MA/;OTF*1TGJ@Y_1KQ]5-V>3O9=[G0S--7P$TFAO@A$1 50[6N^E:]>MVU@^?V.TRL;S.BVR)IY ;?OV2YNMP+E2.!A1AL[;T#65UBEX[5CU+E1[TCAP>-DG['I04J.AX%Z- MV(Y(<1^PS,G[S/5X=&[M**84=8HJ CJ4[LOHGX.E28(1B03TWIFOO\_[ZC:W MWCZ+DN^9AE0>I:R3D./%WU]RFCIS7V/@L[SZVSANE(Q]F-X:A;,YQBO% MSK\;?T]Q5?WU=OIV&L??Q_'23=[,YFG\=?JR/+:?XZ'PXFKUY<9K>!84";Q+ M5Y;7\)$:,#DIH-PX3I*UZ)WT=\_2.W_#GO6][H#FX-%PK+L(\_%%^919?G&Y M&$\QZC]BK-F3GUN/J@RW<@'3FGIX6(86,T5&!UHH$XDF6H'F54(/[HKT>6Y3_-R9UGV M^>I13K?Q%R,?F O1%8^^FSY=Z_13Q.9?1@[<7.9()RE@F90.4L01!9\>@&> M9H>G)SJ=$Q@O2RS"4):37&*@D=),HNF^H7?[>H#@J..*N^_ESY,K@,;CS,\?U$ MBS7E# ]9479':3\*0JL$WF:")W#"0$.Y0-E.X=DS%N/NJL/DI.HCX4AY#HB$ M[E')V<>SEVNRB<'SE% '@1$,*HFUX"C+0#P3P6=)R/TH?E/;3Y :ON5_\N<%^U3 M%&_V.]J -/Z^:]L&G]N. /4W\J:]BLXU=@3T+'.,$)BD8FQ.: M()&(U"QX6_LD:.$J5FAB>7D$%9(-(+PL>=ED0646T.)*'T)MMO\)KF+WP,I> M5['[:*.!(W ]F6GQ?K9,BW\L(4(2K/2B-#R[/1@O/:)^0Q]#:9YC@ -;.!5-@ 7.]RL$YS!Y2.H%F MRRJ5%'4 IVB$D$DVW*FH3>V1T(_1T<0PY!.@X$&&[4B5#'TO]/G;;+XL#Z>N M(YM;CJZON4C6-%%#08F2!K=X9#CA/.)"42:HD>1^PX M]T7/KS7T\7FL,F?] M279HH%P_L'N"&T<-<2Z#2D&B5U$NW(+G8+,3.D=KZ?VW_EMP\NQ20^<9:L*D MKEP'+CCX.)_%R[#\,%]WONKLJ]/,8H1:WE^*,EV#*/"EX85WWA+O@A=JIR+1 M9\H.'EN[X*B)N R+E@%YSL%AOH>AS9E1IL+3,P#(1C^ 0,TAMI VE M9Y.N49ZRE8#A:I:.U^E#@!PIX ;C!,PV1FPBC%T MW#@5453V<^\0,#@ZCE7HP];#!TJW 6@\>VM..)7>)@4Z6+G*514-0&OK%>)+I&7PKLQ2GBS22G 5E."\#S!0( M:M$GDSI")D094RZ JD\WVIVZ)O,]!Z)BUUO>XU34 /@>"0+>SY8O\'OEZ[/E MG=$:;IE&/#N9';' LD'^ B[V=5NKGKF]_)D]\_V=E--)8 9*D JVLRC0X#LEA M$$$I-=[6SP.?INCJFYM^36^G6\W^YOCNC<[$E*!;3"!;AOM:) T^$@I$)I,] M,RI6KXPYB-"A4Y[UT?7@N.Y=?PV>1:)9Y"5C>@2^5+% M5(9;"6^=,LH05;U^=1\"AT[_#VLRC]-7"V!\BJF7E^>7DZZHZJ5;AF]_7)S% M_W.Y&HC[9;86_;5T7B^6XW-TJS_D+W,W7>!'(@0^SL>AQ'TVBHQ;,Q#F0&3A MP204B6+2,55ZC]KZS=U[9ZM=HWPD*/M:S^6H9^C+OXH7Z@9/!R^.69+-SEA1NY1(53-Q#VY M0C\9N-V9.G'F308:F4\<7 H&A!<"O%<<<42X99HGR6KGX$^4>;M10KEM7F4[ M'ZJ@7+64D5RX!?%7/N359ENY6JOK1:M\4#E'D#[[4L#$P2<6('NJA3-4Y]!3 M:O)(RG^.W-P^^-OR0OR4&FZC_NANK8TTFG@K,QC-2J^0[A+(9XB9*FUG^($[$!0/PS;(=W-[4]3F>EK49^=0GNK59@!%<0I0KE]82( MB;6V%=ZU42_ZS[ -#@/"S[(%1H$R1GG$$[(T\!>$$G"1HV.E@HE>:#]06/V3 M1S0'HN80\.ZEPI\%ET_)=E4N1T<:3R'E=0;B2CY8Y03.) 8F4)M-XL2:VKV) M:]'^DWLG)T1W;2 T6A#[/G45YQ=I_OD;ZK#[HY0!OYV6[HHICJF+KJ_9GB*KM\ MHXX/^3Y!*S\.>7=*$P?.V))W4Y&-8IJ8*X[:/Q M3J[B!GR1(WE^_=^74_"\&4XR0;2,Z6R7..@C6!0 J4.AT48:%V@?IS M- W<8J@5\.P$Z@,UV0 R/R]GX>]%E&FZZ&3Y<>*FZ\0^]8J75BB@* 8*@K(( M1D8)D8><@R-2Z-H/;I\@IT4\'JKW^ZY%)24T@*>_E2:=T^NKH>2UIE0IH*79 M >XK#1:C75 8\[H4L\/XM#*"[A P;/:@5\P<+N@&4/(:(^W954H=\-H:/W M*I0!ZPSZM2H%< SE:+BC03(2@ZN=>JA%^\!3Y_]IXHO#P/#S;X*S\]*[SUV\/S^);W!ZU3([=_/(.5!=Y10%GH]O-+ MI?CLNLEZ\RFOO(DR =6>%G\] M@K4<0SMM70PD9F;#0_GYBX_D2;+Z?16.DA!C(T*J&.JO)Q-X&(9W4V(#IR+5+^:J7\K M?;W28SI:Q1L^EM)F&4''P#'>R!&\SYM4U\C/ ;",9&*S ;8B>3V+=)(W(P:K,07JJ%9/%&:KM M:>]!WL#WX/7!L2_\#M34T-U//J?__%N:3*ZG(9 42/:X02G*12@T^\Z*#,HZ M[ZAA/MS'V+9I))L?VS@V#M7^$WR2H&$QUH\;54\##<#I?@RS2UYGG0ZG5FE1 MVE<*8C'(2;@IG?+ @V;X MG*?.J'^^/#]W\ZM97D_7<@HN=86WR[1TL+X<5&#^%QNE'$A^F-\/$7WL^F\SNZ6!UO*8G$#?6@ M?"X=!H@"A]^ ; UGFAEA7.VL2C7BA[75U?!VWU0/H]P&/(P;QE])&@$R"#R0\&OPV7N@Q'+%5,#_T;X@^R1EC>#QM+#9 M!MYZ.FP)F9NGX4/^UD$H(YRJ7#I44*,!95E>IJ(#%55FR9E$2/4*N+T(; 2G M%1&R#835U=42%M].+RZ7BTYB=)VAX((GJQ6%I%T&(6T *Q(#*QWZZA@U=J:>!"E\(+@S;$3QF,# E)=CDAF::8K95Q]QL(64 M1D UK =704L-@*T;DX KW_;GZUIW/):Y*,//%X__:+V!B6#!E^&+-DN)\J06 M4(8!=S$&<\P:XWGMVI::] ]\$-< U*P1[3: [-]GT[2^_7IS.8W7MU,NVHS+ M&5 B=4]O*3A=RMY9"-H8KO'_:U_H/$K)L&@;#AGW+W^.5U,#8'LY.S]/\R*= MC^XBS:_?1"K!6*81'/%%+HF#IP:/FT@0(XQ:&6MG#1\E9-CSNAFH':^D)I V MOYC-W?)>^?B:&:,51H$?+9UX322XL'+%J;C6"" \=('D0.$IR-'CPO M,Y>MEH'5GL)S )D[H57\TZ.U;P4W@>$O\RY2O'K B=0N.^X%1H&9@""E>[(0 M#HR1^ /CN BU>T%MIV8G1,K_ HBLHJX&@+VBRBZ1[T+(T4@(%*D7 M/'BP0AC00I>BO,B3JIW=V4;+L(=V&^F=*GIJ%&_71: 9W0N?'62E,NZ&U6Z6OIV:8:/A.MK> 4('B+X!$+UTBV^XS5 M1B@TNP)BZ0R%WJL>@ M+Y:!#3S/%0?L/@$/>T!Z1"=WX\?:BF@ 3!]_C:; M+[^D^?G#RG'A@_=*4PQ_0ND%I#TXR@FHXD,J:RGQM2W2=FJ&39KT!*1*PF\ M1C754M0NM5C?]VZO9P&]1:YMN&S# M(:*![5".AI%V.@?FT#WA2*[(1&,0CI&XL(8XJ0(+PO1P%#=2P')ZM3]R2N^E M@P9P<_;=C2?=>X;9_+.[WY3D[!R/BS(V^>5LL>PD-3+$4*U9Z>[($_*'D;-;5+>6^-/[\Y0EU\-BK;JO-QNX-NR%(/E+&; M%(9_0R_J1@T!!^V9[*]-EXLHMTXDHJ:4BP"37)7<:P<>$@07&%%1;:9VHWO.]!N$_ MO[<[+/0/1\'^T+[K2+XRJZ'+J+28D&[B7LRC7:(PF8.Y[8B)6VI]0%4*I, M2#-E.J!UK-3[<2V-8\'LUICQ0 )V J7ZYP7ER937@!NQ.YLCJ1/5(AL@5@0\ M)2P'4W(T7@E"/-?*Q3YR"[M1MQ-F]3\O9GO6Y\_4KZ!&M^7=/KBW_@$GZ:?\ MY+MLH9G/VFJ(J$L0T42PPG/0694'6DI*5;M(^N?H R!PCVBTY1 L-:6W$0:, M67OP"3<,CX8H5=N9_*_0!V ?O/77!V ?Y39P>._68#!(;JFF$DV\+#.(_J'[:*H!$+Z/1RK@P: 5#>V4\9J1K0&SDNJ MU6L+3JNN-6:@S&& 1VK7RIV^S*3IF]7C#^WA$-' =KAWPW O;WLVF72-QX66X:_H:_G&8YCSC+AE MP"44N(A*@"$Q0TPI9Q^CDK%V\'0,O3^_ MAWH@S&8#Z;P!?#]]H_;(-=J(4DH4(1$X,R6/5M)U/EJPVBJ>4-RI>JID;R)_ M?K-=!\G]:K?1+.EF)?$ZH5CRP%/<",?-3-KM@VMD20]@X<@L:7<)M+GL]2JW M,\ XC41)!\Z5P,LIAL@(%(AA+#!C1%#\.0D^N\JQYNQ:2E?OT_*&UNY\]1LWTX_S64AH"WT2Q@2M(#I9WD)1C8+)"J-"2J)GQ&9:NUKH<4J&'UMU MG(ZW@>9P<3?@.=UP\68\'2^^I?C;;!87HQ2S)I&CUYTYIDQ5[NU^:.$M.K"[J/:^W;C>(DW<*ZL9E1UZ88;#E(T+*KRK,7@ M'Y(0,$EY2((R%6-,YGY99:5Y89M4#..$] N8(V7]\V1-T#&_2//EE5L-JKTH MM5K3FY]6.GR>6:2GHV@?UGH_F$(F*@61($3O2S&01/1H 3FE[!*E0>HX^,'T M.:#/?3E)'_*U[#[B8M=#C#L!KJZ:;%56F]U=6"2,6)EC:!L3Z@V746K"\W[2@T M9J(.G-8.H'8@:^!BAU[P\,!GJJN;LD:%F_5H; KU [4R]"OI/ 32GO)V?SJAI-UH9!GCFN/&Y)R MQT$X*\$)Y\$1XJS*1!BWFQNP=8E&D7*H)F?5Q=J '7J7W")]FTWBV_.+^>Q[ MVNQ89+6(+@L/,92J<9DB6,D%,*OW#1?67^T^0,VR"N2\TU=9# Y!Z.3N_ MN,2/N[\S @E,B"!!)E9F$'D+7D0&-D69C*52R=H9@BVD#)N*[AM*->0_]+'U M(>=Q2#<7,ZGX^7E/*VYH3Y$;@6#H/$/D3WZDR)GR#X81XD2QJJ=CJ]G MEQJV&T*OQUA=,3=A>[J^R*%HI[OJ_8KJNK:C&&E(ZC,&ND1C"%)N>IPU"920 M3'/'A%.U_>FGZ!FV.T'_5JB2)AI U=MIF)VGSZB<[EQ^M]G!-A,?'3$<&2CE M+$P;<$:(KJ>3\5XI-*O5;U6WDC.LDW229$ M9;2+J_7NHY%29B/%2$*3TJN1 M8Q@;/$B9' FR'.>U_:4G"1JZ+*B2VG>#TP$Z: !0GU G2$#I9?RJ3&B<=7MN M?==X[0;2C*(*"KC-!H45,WB>,5Z-GCL3K".Z=D'U#F0U":Y#0##K5R,-@.QS MFN"/OOZ6IFGN)F5H23PO15++5;7%FK>;X3O44XPW,A!I' BBNA9P#D+V&;_( M-.C:5FPO H>N6^L+>/UIJ0$(;G4OWMV\8Y L&*VR*^\I>7$Q\2LERN@;UZ\!U$ 6WTT1T*S^E M:-KGDE8B!+@JD\4H;E.ON8"H60K!Q!Q2_2K3[?0T>BG0L]G<5Q$-M"7?W$@C M:CAWV0E0G&'LE*0"HT@&E86R*N.VT;5!M+E^HW<#=4!SL*!_GIK357%M"//+ MM/EJNF[-Z3.+]%1SN@]KO=><:DU+*;N'; +#^#)H<)%Q($)(BU&L=\(/7G/Z M\7(>OKE%^N GXZ\KU /Q(WT_[?W9_8 ;[ M\G(C*%GR*$86%1+M"3\QL%(]7[-+T]V4Q?GU%RAVO[> M^VV._EV1!;M)V%EUJG;5QAC04:HA7ZZN),?R: M"IT*B'? L>]5#6H1 HEKM1%! $I2(0\7C6E)"NJ"YIJ0S,3K(5Z9D'M:XDV% M3@7$.ZC5I8+..(0YT,0B0!F),P@) Z++MH)!R40PT_BWY\*4"/SQ+[X]=TI] M$U9?OT7VMN)]UK=W?16VO(Q[-^%DVLDA+E+!R%29A01@D:.8*NP,RCUWQTF< M[VE9^XTWNZ"=1Y)K W2& 1("E8ILS2]V@U M:NX@4R&(D'MUS29\V5N"%^3LX1=L+PE_#"6HUP[FNK)P+4\FSM14FPNZP/1J0".@TWW(/:"Y>.+A_50PXF^!@) MI2+;-%4O=B9:PZ2R+(J%.+LEH]E?\TZ@1UERCZ#5LW;FA3&N@.?O8J39W'K? M1GB;=!FN%94>>4!0ZI.&99SOD"@@4/S+^)L@8.Y;ASUB%':AQ;G1Y 6J-JZ= M?T\&W6;,!^&0%1C ]OX7$I,.1R6@,0H*E!AE9.YTIH/"%$XRKYIW@T$K_>+J MR]??4^G@+U_/MCF!$$)D>&K9:U$ U$7!-8KK"/;<,TQ,5&#G[N/ G@SG[4TZ"3P/4>[9XNIS_+5QE\$SY5UJQ:9Y M\AN&)O5]#%6\"C9HWK4;;7[9*@\O,U.KJ0?G6ISZL^/L#A;8WNM_7L[LW=G> M=;-H(Z-H"-M>>@F!#*02()%0TM@37#.4]NMR,%T,E8>RT^]2I3'O9;58@@*GV[2CF<3PZ[.;M;?FF7J M#7-IK$0P*!_WRR@5YT^5![CEP%LN<<"IN5CV5X.YE2B;&US#VE",$J]Y3MPI M_F&UNO'NPV(3/J9$#@*M 2'UJZ<^=74,,-H".J,%#\CPW)TULRI0MM;):YT+ MHZE0P3QX%-R]U=]G:SV_TRH]C%_^\.Y]LWQ_DPH.)353]M2E9]&8E(N-J>.< M!P;1^$N0ABDJH5>Y3X-Z"]F)S_QORN=I(:V LZGGHDUY*/L-O7D[?XGCMSE) M%;&X<5$K@8 Q*;-E>+-J[2WG&NG0&.F&AK&320 M5%C@('2>.&4TS?W$93)E.A%?_DV)7P=%_LYSY=$-;^H?)W#0/ !H2>K$D98S M%;V()XI"AIDV)O>3^Q=1K-,<4O_,H1>BSM]Z/MV/=/<_M6]G+K[IQ=90$ 4E MM13 21D %2F!PB@+1/"!!6$Y\KE;8A93MMMU&_QGXA7D6*4/V_<_/MG_MYOX M-_NKFDY?F^ZE37]EZWA](Z#&S&L%$$D-195GP&!% #-!:8>@LT%F]G"UO+[I M-.4WN[GXN_/P,*GOCL):2>^26)R+G@8% @2YNU2'0!,M ./.8.8P4R1W0NXD MBKSJ5SE]N'SX54XI6E00:!VK<1L7)QF$TFW!E;BX6@0DDPXH)ZCTV-AHX[Q0C2X^BU'V0JY>$VY*D6#A.* &!80PHAPY(E!I@0\$\HY%"-G?V MSBLM2MT+]GY%J7M@4 &ATA0[#U_U_+[:K N<66DMB*&UB"$WBQL%'_6A!(> M+%70Y7[,\$R(*HDS!.!GES-CK%T!7;I4S%9<.9P:MW.M#:"I9K&R<0N'!18, M13V-S+T8YJIA7JJ4] A*Y49D,,E^^*5IBE0QMR((1*P#WJ7:5$+):#GI@2@($<06D@ M"R[W35S_)_DO\**EEJ!^.#H5+*.3O'(3R#/A50 :J=19E;+T5D@#@3@7D%%) M>>X[K[_]\_P^M'J)Y_E],*Z YT=>WQ)A:4 >F!@ I]>W%$@=-V!8RJ@$,9;[ MR2YH!SV9?EU/]7OQI/N3Z1Z@%5W"#SS>C3LMB2@+@."TV<(: :.]!XZ+*+I! MC/J=K6W61].OZ]7]$ IEL'OI!T,Q2 G-\KHM%9@FP.^+V7VO7X0]C\$R!HSH M$/F/4XE_BH W-L;+R&*,N_'GR$IFS U(%I?7N?$664\ES[N,*F;IIQ"TJ W+Z=Z]7&9X< #4>! T^E U0X#Y0U<=\MM$X-Z1!3N9N: M'!&GL)L9CON1^M2C3%YP:7)^=OG17^GYN\4ZF26=>#M62HC02QR6/1PF2XDWJS MH?&&N'F?OFVV>:),&2E,A@HD5Y;*,& A)H!A)52,G"%.3P5)!P!$*()U,$ E!T4M%*FC, 7"48N-<-SP3EVB M3D#^Y*.%01\"69/#?C4<*MZ8UC7;BA &CB *.R+;(I6+YZSR>E*KPT4$>^'=)E1>+.C8:[2N7LZNE;R]7 M[U\B(!L]LP22!QH];=HO:9H:2@?IK5.>\FYM*PY_HS!!,D/Y?'LRVJX5.)_6 M&6_,]'!]@Y!V6'H&/(K>F!(8HDLF!&A*L(M_QS#+7;)MKR"%$V0F6KG&V[P" MXK32W]7<_.7FH8+_78G#QV5\WOWT2SM;>7=)F [4Z;C]URA.#8+B=&/6Q?GA MB91,!H]R%W'H+V59IY6!&KLKVK0XU<#$P>E$.YJOML5C_\O/KKZE^CD__%)? M^>W/VSK\E\1SB[ P(.4])C#B1D?15)]*&.VBV03)W1'T934L>Y(TP0RHEQ^E MX\-/?OUYV5COW>I]1&*_.]#<** M@0!+%60IQ!YH@BU@-"XQ*/Z.DXY=FWI]MVS4F)E#$YJ\(C9MBK;'Z#D0&G=@ MNMT\N>@[#8I[*_.MWC?+^TKH MU"J%F= 4A=-P]*),*:1U=@QRH/AFNB^1#CTL;)%ZJ>C1A;CUA#?']O!?/)_ MM3^*)A,:.VLI$(K2=.^$@7;IPIDZPB2T0OOL<7DGR4P/&I@VT)9Q&535$_ZV<_O#M?/#H_O(SV04'&+3)R.G6+C[-'N\"!X11C;32V=L(# M^=,"EJWP/@'G)D.GHM4P-0R9K591@_?>;UO\6>6Q0QH#!Z-"%','M'(:$.>X M)4A+AFC?E7#?A\K6,Y]N%1QMU$J+&;=ZK=OC"[U('577T1/[A8V[@X]>KWQZ MD#'FA4&/X;.\/!BJ3J87"8^^?[;S_8=RK_>)ZUQ'6SDO@85: QHW53'<%FF_ MQ1P63!B->&;WWTO L8OAO%!-"F5HM($B QIL!+C"@21%F=N[/: M,R$*'\U/QI#=Q6Z<]2N(IDTLFA22.,2",C:[<& >4\C$XM)H@ M))S",OX=T3R0W 5/GPE1^/;CQ9S,..N_OJ"H;6C1*OMAT1:::/- )@F0CGYJXF"I MNYIE B=K,.,QTE8NI4T$)X BF@(3 WV($#4>Y2X0^J*!TU.OO'-/^,6GK*/M M#R_\\AI=0A$$4]X G$J94!NW(\I(#$CP(NYMF0@Z=Q?/OC*^JK"K![^.KZB9 ML:M@O3VJ7[)END#ZHM?WNV3J(>6<*Z PBOHYE1(I70 N!AJ&IEZE)O=D[2OC MJUJMI^+F6.SJK99P>)U[JU??/NN9BVM<:Y)S,Y]=M=];3;.H=_C@Q$M[7Y6+ M+/ Q=G2!>0:H2'L0%4PJ42F 91(3AYG5+G>.7\$%?MO;Y])S$R2E"G";(G$A M;"IBX$!46$2=*?0Z]WW ?DE>TV+=ARO''>(@'%[?'N8WO4X)(+=G"SV_7O3NS^!BE?Q =:&Q TG $A4T87H7$/+3!*ISQ!!"+CQCRW,RCH M S_.M)G-V[2D[33\Y>;1)'U6O[L-7(3S/+R/IM7S/[U>7@I-A/%0@X#O MSLTPD,0AH&QSB+S__X7^+ M+N+;ZM(8[1%6$CB$;(R<' 9&$@488LA2ZZ@BN6]3ALI:=H=>%VG'0OF**)NF MX\5?S:57CGM$!- PU=+E*14'*PJ,%410%]1 M:/[2:,J0CQM/WU85"I8"Z4CJJ&$@]I)BXW*?O/<6LNQ+ACJYV1N\5\;.]\W- M\M(;1J @[?-B%/5C!DB+XQ^#5"%&.1*RW E&?64L^Z*B2F[VAJYT\NE1Y2Z: M-SZ=-Y^%^+5[]9205@FM 8/6QQ#;,R"Y%@ RSY%USKC==E$'\E'[?[OL0XW) M&?<2B+PB7WBI.,&8INK QNNHEW/ ,,B DRKZ?AJEMT7VYE&VLD\ZJO-]O: : M3L%FK>?34_#WA=O-_W3SM%*D+"C+*/ 0.4"-#T!I'D,0+1!501KR MLGP\)&C9MQ]UD#,+B!4XRP/J79K K)/& @>A!50S#0RD&@3*7 @2N\!R/W8[ M($K9=R,OQK8<0%3@^0ZH\?9FN6S?Q;BXZP]Q8G ; PCJ% &&BO@+P9I)K*W/ MONTX+E&W(V_X=Z77$%SJ]5J?FH7=*,250#A@!;P+^*[$D(;4 >@ME\(KJ7;K MFT]%M >ANG'M]=^OY$7G]651?-++I/^/B=(EG@T_<5[$<76*)$ 89+10S@)I M)8OLC$&6T0@"YV5(\](YDOMH]442(.[>EMY7!3SRS;LB@50X+B'2(.[#TRFE MAT!12@'46DCML%&P6Q>'[M]\3?D,?6CR]'GO-!!4L')^;%:K)UJ\N?V4\IY: M5;=_?=&DY-C=?DZ# M5'42YD%Y08"'AJ8A5W$NCH !4UL7 M$W-)H)GZ- +Z9#(72]U>=?/W'^WHBF&'#+(0 FKBYH3(8H(WCP :# M;< 4&:7RQ6,?>U6QSIX"]1*+X=0@5."S=F;AF;7+&SU_&S==M_&OVAIK]Z3XQ9MU MCM.,O>/D.+8X+6"F\XGTH3T[3.8)]6TQ#&@MH%YZH"!#0$#M!)/<:Y+[/'N_ M)&.]4!KUPR*.=9,FS\9AP\"%@ Y$5>+VV:5&6XY1@&F<+48JH73N6'R/&&5C MI RX[[J0L::N8,UZJL)=4QR.!!9, \UP\G:I/1=*N<8Z97,:ZIVI"XYV\8X'',',02>B+@'$(P R;$#<4?@.)=>6Y7[%>\A66KB M3'^,CU)FH,%+;[H^+!;-C[@977UL]&*S:>2IN+A/[791JC]M3 !2Q4TC,XCZ M.)DT@MVZ2>T9O"8&#(6LR6B_JO!_/UNNUJGV:HSQ-[H8:EW@SJ9K29(Z>'.@ M-(R_$\9BAABTL-LN^\2'RKXLFI@7(^U:%4>^>MLLW%-E+":.$>H 4\(!RK@# MDJ77^L%A2D(("/+^)-GSI;+/>R9FR5C+EJ9)JJ/TR M:ZHDW1@/E4_,*2230 MEL)(\\"H\M)B>'(ONV?1NCZ$,1V?/Y:AI21F_01EMZ0K9LKW_P!ZJR&N M&(M!N(<&2&:N@#1MHR3ODA+;[N2, M.@%3%S8$):#<:V"D($!8@42<84BRW.6KGPE1%U6&(+O;E&&4F0ORY+YW?3M? M$%$8,TZ XT(!BGVJPAQ2&2I+"?54>M:IS&$<]1$OXI\>./'D@S5%I,,7F>$V MK 'X#5^98+G"@/^F M?\ZN;ZXW@@*1X,YH0W6461I)TIU0 %H@#1C1W#AB8= YW/R3CY;93V0#?K#]*H@! M-QV%_BO=/B_6Y\LOJ61NZ_ZDX8%9IN)^&0I H?0Q/B8\NC]"B&(4H]W>@N.S MTP\)4]/1Q/@-9QZ;UTJ>3<1,%5<,Q=D$+?&I*14#BL)::0/ %D% #<=1!4R #1)3;62J MM=3__/OI1RKDQA 4#YY^CS!I!3[FJ?/]>)_^QC&CD @/5-* QC_%%5='76RP MV)N@HBY%3;?T \$]G@C6U]+5<>5]W)EMJF 8HYVTA(+@>$A5"R#0-DXK MJJ5I3P$DFC8;[$&6FJYFH=!PY/ M?Y?:%:6;J'?I"(GW>;&:>O_*746D#)+7 H%?547@,I MM0->"@=YU-&&W/DIW:4K6Q=S^A J&S+5<>Z-7LU67Z,LVITOMG,MJ8DNA>&* MLQ@L&A1#@!@L2B 12\I!SZU@R.AI&7=8MK+5+Z?G6R94Z@K1MI,HU8_]L/C/ MV<)=!HB"5@H#[4FJ2F!LM%V00!/%B45,$FH&A&C/OU2V(N7$(=I(P];*DMM$ M^O;0(PBO,$M^E>!H)RZCB9C!P!G($+*&.C%DK[?G4V5K2;X83X:9MC11WNGE M_/:+_WY7C>YA0Y(688ZUY4;K2'@4]R3,$:"T50 Z[H03$'.!.E'DR$<*EX+, MSHY<]BS-BZ>&>?=S]DB7R_2$/U H@),BI&+X$"C!8W2&4X<&S G9?7;:R7<\ M_4KAPHT3^XT1%JTNWOU]H:^;Y7KVO]YMFQ9?>F$L]0B#N#"F<@_2 8EQ -YQ M3F)@CS69]KYKCU#=&/6*3Z7' E$!LQZKD'1;K6[TPOIW/[_[Q2JZ4$0HAQ0# M+%-Y#\--*KF%8[BNA$-Q%C&1N_3#<8FZ<>I5'&9/ $$%A-H&:!OQDT:7QF($ MD2? VU:%H( A@H&@'=/.<&^R.Z<]8G2CSJLXX\YE[ KXPAH#ZE1BFJ :5(&H=#X#)WVE@O ;MQ[%4=8T\'4 7LVYM>M;U2 M;%_FM,7#W^KYW+LWM]M1BM+ M#QF PF(: L%.9*\F/D30;OQ\5>?BTP-6^O1BKX:;/[5'=) $&70@ )O HS)" M@AB.0. HB?&(D1SZG5)(!TXP3GVI&WU>SREY5LM629/W>K9L2TI>>L65YT( M:[T!5- 8N7H4?X':4.YAC%WU<)+8- M]H,A5R,K=W8>/U=%SV$*35OI$T%GE<(&0"I0Y&!JB&.= 99KQC7T+'\X^Q*5 M/A]ECS)!(*=& X%42 VYXZJ:D@41QDP3Z.34Y3Y[YNR^=,W//@SHG++;Q^BE MUZBG2FRZ1MW=2&_WOI?<&&PDBZH@F]9&O4L+EQ0M>"#L6$!:I;C=+#4@\)D"%.$T0-\PJ9Q#";-) M9^B%\*2'XY-&/&-AJ(=>CWDJ;)-VYPWS1!JTG-1@CB5 6J6OUO5 MP_?+YV5G)LU@XV;K?#SE[ORWU&"I/6]_NK'-MCT_]8'\^_->*DV[05?::DTVS0']OQP;[WB7RK\_!Y.5O8V7<]_^)3 MM0.7+G/>1SGT_$^OEY>&D/VY^"B!JSQY>"&ZCH3OM7$U3<:+OYI+Q!ERS!!@'4]'+W%O M;0*!P$CK/#=1393[DGB(G%6>=[P8,X> ]2H)&1GF+QEG!@DN@8?6Q0V4CJM# MW)D#P9% 0G"A3>XZ<\,DK?+@Y&5)V1NPUTC+]\W-\I*F1['$<,!"VO])9( T M& 'LK*4464;I%)73>PM:Y8G+BY*R-UP5OJ\O>%U=]GD7=)G?WWLAAC@:%# MP)@04FJW!YI""T3@Q#C"-6;=TK/Z?KG\P_?I*)39[O5<(9RX=K.<*Q>G! @Z MW>):ZX'2C "F>%L;PAB7^WHJP[WGI$F!F=>QC #4PZK3%VY6HV@T&3<=485H M,HZ AJDL %(:BN"%UF[2\&CP0]A)']U/&B2-Q:$>?CVYF^,D4$5GI]=R(VY"QWTPQ\UH1I4SW91N)/KB MOR<7%'=J]^WKD<04BM1B.M4/@HH K0(!,33'%,/@B[."'7]RC=3/!U)[-$$*=UA88A"F@ :72 M5\@"!'DPC" >=DO.5>O9GAGTKD4!IX0%R23P,NB4&.#3W$V%>K4(CF)!5.Y# MSOV25.K1^C#@V7/4\2:OX(S\F19O;N][MRH7_\.< FDE!Y0X R0/& 3FJ3,^ M6*ER!^Y'Q"G<0"8#VJ<(--#T-;+H45-7;AQ5Z7D!1S05DL<:*!1-Y#%3:2$+ M^3.HCXA3&8N&0G[2%PVS?PU4NEFMFVN_?*;2IK&2M"15,Z4@0*( M3PZ;QEU M@@0'82UA+'MS]A,B54:IH=#O4BHC#C70ZOG,>^,7]MNU7OZKG7YQDV$Y3^^A M6,JWX,8 8Z0&3G,H28CJPMS;W%,RE-. L.=BH[=6V.I(RK[*?HIF2KS5J,8<))>(^"H@%Y?]3SEY+2;Y\_+QMW8 MML[%U@$C;)$-!# -673 <0XJ1R6 T80P>&J5R/V&X:A M1%K#/;-5$!4P*HS MV]XL17VLG_U(/GW;LE);$J4/P$&:]( <:.$#P$H&'#22V.8^ CTD2V4K7TXN M93%_Z5[F^K^;Y39 7+5^V]D0&/(:<.40H-!S( .$@.$8"F+ND,:=,CE/=K+? M_7+9)/:,05(&PQ:FQ2=][<_#$QTV$T8H%Q27(6YKJ0=4$ 1,""IN%JQ1(C5^ M=YWJ'Y]@QT$!RJQ-.1!MFH A&JH>A: MP_#IP&5BAHD!'V*T6@!_NY$]$$PU(C%:2MWX4G]9H%&*EC2B+G"I#7:] '_; M _#L*__$@ \Q6BV _[*1G5D*">8"L/3.DV**@9$L6H*1!*F.(7*W/BL[ Y=Y M&C8QX$.,5@O@[S:R8Z:#@QX"8@B-LBL(E#8:D$ 0401A$SI6''TZ<)EG5Q,# M/L1HM0#^?B,[@E;+H R(&N-H!)A:STL&-*6>2!DX9_U<^OL>@&=_!34QX$., M5@O@OVYDA\*15#806,W2Y:14P!B#@3 T,.>9DJA?T/9K#\"S/VN:&/ A1JO@ M8/#96<;'^Z+*2NB(HT+10[5OY'6D+B02!!+WJDQ%O\6S7[H>E*;L"_&7N!8; M9O@:*?30T@1=!B&Q#!0!3V'T?TI$72RT($A,D>&.6YV]R<<1>2J[KQB(^2DJ M#07@[Y!HF]Y)?)S]\.YLM?+KE;E]^-_.EEZ_5-IM1S%>/ EWB'FF3LG5T'N+ M$ <>FW0)HC60RAK O<$<H%WT8#+A9X_' DO MW X0=PL*LHY[E:I[TQ"7$='V+4$"0!>""=);R[-;8I3$E:;X]F'4LWO?EX.P M@L7[8?K_,HO&FYF;%KPV-S%(CK11P!(LT]O#5+3+:20"JEFJ;_9=#1&CB*7!7OW^]],9B&Y0 /J0]EW31%,H(@&QJ_<6M0_:8?UIY M^V]7S8]_WXQXQYC-'Q[(\O"]&BDQ!+MFE"$K\".[J_[CZ/9^/T6"PU1$&VB+ M2F"TCL&H]P0HQC#P@C'F!(*>Y\X'[B997<'[>$8<7.ZRP5,!Z3XU"WNS3 :^ MT^/28$*U@ 1P;G"4GRN@E44@NG2F48A^?3>U8OPC]AT9:ED:\^&\^Y!]C-'+ MGZH]B7>\=7?#G_VEE^YB=AWGWD.MDM,'8WN#J#3H'7&L>^#+_B_T//,:+/S( M8ZOXJ:X_"( WW"XP%_6WR?I4$OHMIOX@__E47,YZ,6F>HG ML=A.V$X6*>C%G\CGU]\:EQFOG3&+A)O#T-IOC4JP^AP_NUY>+]S[N;[*@M33 M$8MDM0W"::\E*D$IS?BWBY5;YH-I9\@BM]"#O=]S6U0"U'\T?SW(E]<#'ABZ M2%+9(.".VZ8P@/=KZNS:N_?-\FUS_?T//1\]W8Z-6R0]K!=T':Q2P\1;O8UA MLK]H[L5-ISH99]^)\8MD??6?@MVL5"V>$\%8IHYT)O0J >W#PLU^S-R-GKY5IL,U5&3:-^ Q1 Z8/.FFP$J./"\F__; M>F!Y#S*?CEUVL]QI%ATU2@5@??T6E7VC5]ZE&,@O5AO[+?7BRK>5/]_.^NO\^;6^^_ MKF.0=OX]Z7;2E0]AS^'OE+U,FQ+=IJ>I*Z!#*]O9]_AY.]ND15]]6Z^^GGWY M.@DM3G^O[,7_"]*CL^E+QWW[%MT8""4-\V^BM@,7Z90R?ANU8Y<:H/M]X9;S MVZNOWFX:V9U=K\?CMG?4,BU(^J-VS"0U0/;NY])^7LYLAOGU,%293A_]P7FF M? V(_!I7@/4O>NW?Z]GR#SV_R0#-GC$[853!/>1AS79S3BUIN&\6[;W!1.EX#P?/4OZS0FA,Z3>?/&V^>&7 MM^?AV;>>D6$0[SM]8,24W8RZ_LPLA9WL%[^*MFOW M0VD-&'U(OV^\8G@=M7O3R0C_7U^?3!*== 7EGXN3?RY.>F'SJ5E\\DT.4)Z. M5.ZB\9BMFQ.*5[2N^#CD]6S1VBSYUVP+S+.!BSFUH9%!%S.5=GE75^N-4J-/ MFYX.52P!="A:^TU1&)^M0 L]OUW-5GERFPX.6BP9=&3L?= \A='[NO[7YZ4] M7UZLEN]6Z]G=6["<6?*=/E L4W0HJGW,5ACA\YMU]/%Q'5]<972EAT4#Q3)),RR6)\U6&.'W<=!FX;>:YK@0/3!D ML8S2H2@>-TU=N/URXR^:=S_37;^/>J:WU;8-K< MV&W8%\OE!F0B13_+UK,#RQGB'1FV7 )!ADU8G;'>'@$S[Z-WA^T$8E5G7:=M M5-&M0.-7<5_XQ?_/S6QY[U?R..4>G^D$X'*7;AV@.%QS-R5_O2 M%T(_O;U9SW[XM]%-7#7+V]&I(_M'+ ?3KKV;CLJ7/DB>SW?%F_E,222'!RZ7 M?744BJ:?70I#]]DW&7!Z&*5D3LEI6S='%"^?Y!-%^I0%CMVQRKV%[@G* 2/\ MDZOXDBO-/_F)_^0G]L/&_?=%T^['QTZ/IR,52Z,Z-COV*EL:@/G\7JP\4V-W MN'++^EYS-UUT+PW*U=6Z?;6T6"W^T''R?KVYOKX[MUJM%Q=F_KY9GGV?F_F? MRQR8]?Y:R4CM$&)-!O-5 'N2.:JX^OK#OEVM,Z&[=]"2D5U'$(\9H_3F)S=. M@S&:9J*=LG[3S125H/1YN;3 *P.&*3T*=W_K&_/_EJZ51(Q U3[ MQBM78;F3VSMB@EK F3@*/;NIYU?Q0CJR_?EVCU7 M(?<,[?:YV+>VX*%H?]S^6[AWJ=R%^?A7HE?EXLD^-L?2_?G,MVEN\75 MV<+]OOBQ6KL,!!C\T3JF?C]\FWS&+LR5M+WZL-C(OROIKCXQV/ASF6,]'_[5 M.IS&8+:,-G=ANOP1%;SZ9;V7[U&/^.-[VF>@2?^O%0L*\]!CL'GK\2)GJ_.P M4>,\M R^5R,S.P9_M-@SS^P^9)"Q2Z/[Q1ZWYN%31@A*-\7Q.N7%C;[*?#Q.L47GV$7F M'D5+'_1NI,V3*_U\M'+9%N/2+VM[=O*V^>KGWJZ]VW!H](N3_2.6N_\?AM=1 MNY1.+XNBN/MMI&Q6?B\U%L];S',_W M=LSV\_ZYG+!-2^(8O50QF.UQ'+E,ZI2E?N4<)V MUYC)-1X:LUB9DX' G;!-Z;!SF]!_]N,JFV\\.&BY"B5#H\P3YJD(O5:R1QXB M)XC[QBY77B0#ED>,58,KO1EMXXZ;^6/5+B)M\[=OS3Q:^IIO.HF^?GZFU]./+_W M?Z,3U#4=7/4T7NE9K>9>Q)R($A M.V4KU'28==PTQ4_^M\X_/X"GQNZ$9$U'61V-51#2;7_R^\#]8[,ZEJ\UI W\ MT[$[@5C+ =91\Q2/=G8B[['3;^^ G>"JZ0#JF%E*5ZA- 572*!-@^\;KA%=- M!T9'C%+#$7^6KF:/!^H$4$VG//O,4#P(:4:G2F['Z(1'368]&HZ^ M^:JXIF.2"M-4F\6O,7#9"/:+7]GEK+V&R92G>GKX3B#6= #2W63%UR4W2W+I M.87XQX-VN:Z?3XW>"=F:SD(Z&ZSTLK98+=XLPCH]('';,"?3]<&]2)YOQ[0GV#EBP$NXI M+)Z<.1\Q1NF;@GO11K\EW1FJ 'K;T7E8I>EY[-YWM\29YRN8<'K@"K(Y5S M3QKDG\KKI>;0/U78_ZG"WAD;ZWZN+O_3_Y@M/C7QL^N])5+3/TK69Y 0U")P MZ'\K61KZL'F;3KH.1F$^^DAQO9Q?^.7UZCQ<+%V&+>;$^@5IIPU3 M/%1+4N5HG?ETI&(%#/H&T7O4KP62B]EZ]/[FR5#%*A$,!.6) 0JC\N5F[A$T M#*6PTC7?U]Z]G^NK4? <&K-8E8%^.)TP2?G[E"DP.S)LL;("_6 [;9@J'& K M5WJ%I-+&\7JSS^L)'0Q8K)C#<%3XW2%V>,!-@ MAT,,#]J@"JW<_O\^6.:':&;!< M88 A2.VW1A5 _7)S)U@&B.Z'*O?,?P@XNQ:H I:OWMXL9^N97YU=79W]T+/Y MZ G5UT=[57\-G*?G)^:]4;4/.?] MW;]2R?'_2)R/V&]ZC[[Y0?K%Z)7_O__G_P%02P,$% @ )8*N6I)(USV0 M!P 9R4 !< !C9'AS7S(P,C4P,S,Q>&5X,S$Q+FAT;>U:;6_;-A#^OE_! M)5B7 +9C^24O3AJ@2S(@'_;2KL ^#K1XLHA0I$92=KQ?OSM2LIW8:9VU:[U@ M_9!:XO'NR'OXW)'41>X+=7F1 Q>7WUQ\VVZS:Y-6!6C/4@O<@V"5DWK"?A?@ M[EB[74M=F7)NY23WK-?M#=GOQM[)*8_M7GH%EXV>BZ/X?'$4C%R,C9A?7@@Y M95*\WI-GQ^D0!OUDR$_$(#WNG6:]02_K=?O9.#D>]-,_DCWLBN*QC_-S!:_W M"JG;.9#]T:#7.1F6_GPFA<]'2;?[W5X0O;S(C/9HSV+_^#.J65?&[03UC8WW MIAB=HBX/][[-E9SH41CD7E36=$B-,G:TWPW_SJFEG?%"JOGH^_>R ,=^AAE[ M9PJNOV\YKEW;@959%'3R+T OT4AXG,5!G* >)34T@TIZ-(R;^UR.I6?]I),\ M',.VWJ<8 +!?Q?WHAH#46.ZET:-*"[ DM7=Y=?/N_>V/MU=OWM_^\O/V(_O7 MQS'8&(;;%OO-0YF#9M=2J7F+I6"]S.;,Y]R_VA^>GC\C.B47 A=46T'F1_WC M)EX29T?[43OY>N-,.LTPOKSUA].2=#M#FH9;EO,I, M3"3.D(I]+Q]Y6W"*H MU9R]@])8SXQF/QI;L*3;?LM,AMPDX%ZZ%KO5:0?#<_8RPM/;N?#\P!T&!:>_ MF+,[;68*Q 1:,4HVQD88=$$;S"9H@4O-N)ZS2GM; 8X \TM(-1@TS@I\LI(K MEO$47UEF"N0^;Z+#N,'.(>[]@_"\VC_M)2?G MKL9471H039@LD_AXX Y#[&X9MQ!0@E&78P44308(S;&2+J<>)%8@2Q)3TK.0 M+E7&5=B/^-,:%>%26I."P->.'2 Z!"#<(@1N[M.=>"X@%I=49=HJ55, '<*-:>A48D$ITTIQHG<<5G!B MF=.Q1ZP05@L;_#4&$D0&QOX@/HEQ=PO)XQU"0%5<& ]$5PK4 MD#[NZP&5E2T1U2Z4)2ENND5P()2J$]!8;>#.E5J@I%5#(EB&1P#CZI(E,O@+ M@G"Z0Q".9'PSY:H*C$7QA2S#6E%.,3)N0\VW*"JV8.#XN+D,#(C%CLB>+A:; M8U/YISW8)D?PA310)9U]?/O#QDV-'A8AQ)E ?P+@R,#+ )W8(=#5O!GCN8X+ MVH;7!5QHV0B^9[ E9763II6EZ*^DT U:"^,\OJ>C2=3E4E3T9SS280=/=,D0 MQLACCZ1KQW'O!.$$@0X7=+7PZS!ZE7.WJ#>( 0/L0834$.:CINTY4_(.5'V< M\$B^]4>V/-%K)O MJ#;#T6=S//0LR-7;E'C,L('6N,".#A:L]B0\ZQH5NUBZO\'5$0H A]G?504B M!"IH8> A$!Y")YQ5UQAKQ10H]=2H*5 > MU'Q2'[G;FB.A*)69 [;.#%KAIKSQW8>-8NW7&)<8V#:ZIWCI8-3\.,?T5"H^'TD=C(1. MYP]'25??4TIS6!G5E[YAR<3F^E;\[*QSTCVABW&/T^=%8[B^,^^$._,C+];; M!J>=L^[3S=U.\F3;9U)[%%R.;N/$N)+KUWO]O:9#C911EP7Z7>C[@&BOO"?A MU7MRPMG:-)KRR^,G3,JK_0&NK/#WX-Y5CB_V*.WI)N35D\ZM<0L9N[B&M MZ&" _1)K9N+<@_J4" D=%NUU37VX/ME'@:H^Y5N;#S/]HV]_2N/"%=LHGB%/ M8>UKH"74@^'NL@L?(]XK_W27ISZG>?+3HOIO_-#I*'Q@]3=02P,$% @ M)8*N6HJXM]1X!P ,B4 !< !C9'AS7S(P,C4P,S,Q>&5X,S$R+FAT;>U: M76\;MQ)]O[^"5\9-;4"2)4N*+=DQD)LX%WZX+1H$Z&/!776Y(K6?WU M/4.N/FS9J8RDB6HT#XYV.9P9<@[/#,F]F/HBO[R8DE27_[KX=ZB%\4N5O1Z312[TRUL/IFZL5)[V0D?C'V5L]D;/?:YW2YU'-Q M')\OCH.1B\2HQ>6%TC.AU9N6'J?IR3 ]2V2:#8:#UW*CRI_/M?+32;_7^T\KB%Y>9*;TL&?1 M/_Z,:K:527L#?8GQWA23,^CR=.<[,M+R0^?=$%._$AS\=$4LORA[63I.HZLSJ*@T[\3O(21\#B/@SB%GER7M!Q4 M_X2'<74WU8GV8M#OGMP?PZ[>IP@ V>_B?G1#46JL]-J4D[I49%FJ=?GNZN.G MZP_7[]Y^NO[IQ]U']I>/8_AH&*[;XG]DX(L45S:AW]LB)>MUMA!^*OVK@]'9 M^3.B4TFEL* Z.65^,GB]C)?&[)1^TNE_OW'VN\MA?'OK]Z>EW^N.>!JNQ53. M2%B::9J#BOQ4._%S+2U G2_$1ZJ,]<*4XH.QA>CW.C\+DX&;%-UIUQ;79=I% M>,8O(SPG>Q>>_TJ'H&#ZBX6X+1/EM@1*2LDY:1@N B>)^52G4^%J_K/N/R=+C1(>0*%=C@3&N7"N M_10#=!6EP4'66\$UHS#,&;HID2PVI^'E@'#P]P$AB4R7"#,C9AW6-A (<33; MC79=9F"0D*?P.\UK!9V SD8,VX"=9M:I$'D&+8,YS]>H; #A'I@&\)5FQ6V6 MJ',( (H&> GF7/ GE6XJLMS,W1*GEFZT\U;"D.27T6]XV=Z FULZL^7MRT'< M<.\0]^E>>%X=G)WT3\]=@ZFF-&":,%FF\7CHCD+LKH6T%%""J.LD)XZF($ S MR;6;<@\6*\"2S)3\K+1+<^-J]&/^M":/<*FL24GAM1.'0(S+SH:R>X8R M&.)Q/L0T)#BW?U'U-!KN$4X/Y=&^ /5U=]SG>7A/#IL Q"NDMC\'4YNS;BIK MMWL73G\) 1B-I9A036VA !PUTRXP'Z2H#'JX9%YSYB;O6LIE0%J34==H:3>< MS(T:_ E?G,FU"MM35R=.*RVMY@'HF/=#)BA94^TX%X>UZ4+B#CQI',$A;$Q# MIPH%I4[K7#*]8UC!B75.1X]8(6P6-OB5$ N"@=&?U! MF;2V +T[W>V,:ZR%F58,5^E,*9G7I0/4NGCKAE05=L*J':A+$FQZ5;!@5"JWE"):B,'N-%"%:\: M%D$9'@&,U:4K,/@+@G"Z1Q".9'PUDWD=&(OC2UF&6E'/$!GW2,VW*BIV8.#X M^'@9&!"+CF!/%XO-Q-3^:0]VR1%R)4U<26=_OOT1R;)&#XN0XDS GP X-O R M0*?V"'0-;\9X;N."M^%- 1=:'@7?,]B2L[I)T]IR]#=2Z"-:"^,\WO/1)'2Y M%(I^BTH,9,,">5$@- M83X:VEZ(7-]2WAPG/)!O?_$4=5_$9FST\U13)F;&%W3%:/L M&;7'5AV[\DZBEO7&NE6Z#R^@LBBT]T2?20B)04'![4K#OZ#D$$@&_SKF=_S/ M%?5R^=%OM8;[8:G591H.'([^V7/]A6G^;8X:#36C!MQXH\M;YE03P-&DZM7> M9T[REG-OK-E"]@W59CCZ7!X//0MRS38E'C,\0FM2H:.C%:L]"<^F1D47R_/4A[8O+S= MP^O!]YCL0*GB_W+QZJ#_NG?>'[;#O?C2=Q^VA8U?"184V0[-P][9WR-;C']'FU--S< MD'?##?FQ5]MMP[/NN/=TS0K(-)3P2R M7>G[C.A)='0RQCL+?^_?,*^1_W8EI\(=)NY;3-;?!D7OIIHR\6%%NS_%>I<9]+ YX>&;TU4[9^^- M0Z"F/#[:GL;CP$-?\MG,YVG\P6<\E7'AMFP2CX-GM/5ASQK'P7!OW44F '/M MG^[RU)&5X,S(Q+FAT;>U8;5/;.!#^?K]B+YUK8<8. MMDD(<0(S:0@]9NX()>GT[M.-8LM84UMR)05(?_VM9#LDT#"EI=#.73YDXNR+ M=I_=?22KG^H\.^RGE,2'O_1_=5TX$M$\IUQ#)"G1-(:Y8OP"WL=4?0#7K;2& MHEA(=I%J"+R@#>^%_, N22G73&?TL/;3WRF?^SMVD?Y,Q(O#?LPN@<4'#=9M MQ7XGB0*_TXY:,]+:I[-N.XBZ44"[>TDW^,=OH"FJES9*+S)ZT,@9=U-JU@]; M0;/3+G3OBL4Z#7W/^ZUA50_[B> :UY-H7_XLW=QU1N0%^IL)K44>[J,O3:^U M2S)VP4.;9*-T5AM$(A,R?.'93\](W(3D+%N$KZ8LIPI.Z16D4IN,?/G)_']XU)\UA$R:CH8W>WVU[ MS@\?]V "@Z/QV71T]$5PW]OFSYI(#7O7VX/Q,4Q_'\%DFA_C,>86^OA'8R,G?(V;[X=2Z[,HG7"(!.#LG$DN7+>"<%D)J$ FR-J"G M8R%S\#WW+21"6I<)4Q')X&/I&2BF'L.?1$;IRQ?^GM?;]1U+^PX0A,N0['@8FF14HY'+$L6S@P3 F3 MB)Q)REB]%D3&YN&(201"2,SQ3%+%3'$,TYXQ##_SULZ@.L5I@J7U(08"Z D2B&EDLX6@ :: M)?A_,9=J3K!-M( 5ABG+5^)H:<9@2&)1F*UVU69-TTQ&%<:$R!GA5+GCZXPN M8!#9BIO)<%!.$,OV?N\!W5V0.,8-WLUHHL/=O5O][CYCP]NNV%OF\O0AK&/C MMYIM@\44BU"-6C+'+L6IS(O,-/QR""3].,<&-<BK>7 M9;V9F^7,5+7UN[LMK&JW9YKV_\I^W\HRCBR8$\NQC-O2U,5&*L)J%SC^IJZ. M$9,L U3&$) O*EY03D6B-8\@:\?,.C2D@UKSK&P+45!I5U*W.*;YY57^NCWM MFZR>NEN.$&#+:K@'+:H9:I4[4!V[)K.,UG'-A(RI=#&\C!2*AO6/7LQ4D9%% MR+A=Q!KUUK,T;Q*7AL)Q ZR.1G9H2G'UDM'M-CM>Q[QG:(1/Q_7"U2M(T[Z" M[.CXKJRUW^QZF\5>T]\H>R2W.S;D,FP$1F&['31V&[5!-1>A![ZM=^WO'M6@ MN#;*JZ=),U5W8!3%T_>/5[)-J]-3]GO]?+'L_,<%INH_3#A$75 B8S'4:?XT MJ#T%4@\$HQS"9\+C04?1^TZBAG.W"LEPK\%6!O[F8&A(@D21F'-MKE@W MS_^./:I\R]7E_2>]6U>IA5#VO!I*FA%#37U;^W/:.A;^??\*;3+-36; MP>81'FEGLD!;YO9"-]#M[D\[LBU &]ORRC*$_O5[CF3>T$M[V^*[TT[SLEY' MY_5]1Q;W4Q4&K^ZGC/JO_G+_UV*1=(27ABQ2Q).,*N:3-.'1A'ST6?)$BL6L M5UO$"\DG4T6%OWAU[_,9X?[+ M"^Y7[;)7JU<:7LVOU.@==>!)O<*/:;M7]MWT!0Z&[&9.H17H0\*DX9 MKM^LU*U&+5:M.??5M&F72B\N=-=7]XJZ 5N.<(7TF2QZ(@AHG+#F\I>6SY,X MH(LFCP(>L:(>U JIG, 2KE!*A,TJ3#]C4G&/!D4:\$G45.Q99D/+&*3T8 \_/U#;]@; M]09]\O#FL=O%UFT%'5:![5B5??O6]S1@5TT_K0(>^;#]9KEJ-:IG$ M0G+Q=:*ZOKJL.TZIM=ST6>RRE.;'"'%8+UH/=NN&@'JTDT+VYI$2A"9$C,EK MYLJ4R@5QZ@63MJ_5E)$\:8]TQV/F*3YCI /@DPMEN@M"(Y^X3,T9BP#Y?/;, MDP+I19Y5('.NIJ#<,?=@:8IP6"+O62363^7 B?M+E:%$C[@30J MI5HY%VX[9$' 9 [43(3,@R-FQLV!0FZTTPV%QZ\NG7*YI

3M,(^%+DSB MU#3REG.#O.]X3!.VECL/GE8@DDVH1"\AJ*8XE=X4I01-+I5.DX1! I0LT&H& M@V#/;#>0'_\#+()THT^+D%U=5ALM-.2)I/A T?,G\ML/((W<5,:&2V8^/9$T M0J5E?AT1$6OG1:]&7P9'_[R:'ZXNR_76^TR_B0X2?&X.!*!3!Y E$+%N:(LP M9-+C4#Q]8@>'IS$NCH:F"TT"PO!8[< I0#Q1)1P]9*2A3S)[!BF*J4!= 36 &Z2X!!T!5U*0/NNT[976H?[' +!:7A-+').?/H0!2P!/ <7DG,(&)+$S.-C#J$!3QB/C'=Y M-.9*9SN(2B9#2'#).GK(NM9-IC0(R)3.3%H,&8U@[PDF73Z)3+I-4F^:S<*C M@SE@GY<=AK7:":CFY S5G+SYXLIXY_7$)7+[*YJJ,YF:0L5W$">,J[G,G)HM MO9%EB0^)%L@4,:DS(!E!B[^*.H2)C*EN OXN9RWK/0(9AES3QO'&*TMHG' O3.GJ>ZSQV*E M:^ 59K)GH)M)$BP(5!80Y1+B?0\:"P33549/#?JA^P(5]0T16+8=271 :+%Z M@?_C%/Z$5;PL /3QLD5Z603,5N7& F?7.EN=]*X77SG\"KN7)<]&^Z&*ZW-3 M&%&17DL1?)_3E;)UEZ_0J>0M=-HBQ1)TQ0?!D$3%R M;=]@/@X%EN@;DA<@EWMX[DOF4PZ_S+E!>Q_]T- &\ (1(ETY,Y9\FROU&-9.>L1*KFS8O?0+4NL7@@ M[^C\G$YLD1TWOD8/TMDUH!S3H"1XX0+\"U*ZY)J>B%3G8&C2YTSX".LIH)+P M*".42H)4U-/T U,F"V-S)(4]W<5&3_"0U&/A1F+'$%GHHQ(,F*Q6TR.69=M\ M:D( @(*X23>3V$ZC8'K*@3;HYX-/+ID3 #;$+,P#:ZXAYM')AD MR@8+:G/J56@VHR=.N\'O. ?NJ^B'/_"^BIZQJ8\\O).JEX;=0EB#:-"O M5"9L??[6*!\_?SNVI<_K<+EVV:II8!'F34W3I)H9V[LWMKXPIN]^E=9#J)N( M "+XP%6S(W)L?I_*-=Q-6!'3S%.1CF$?31K,Z2*Y^'G#[><-MS]XP^WK8F1# M(Z9B^$:L;>\PT=;Z/I-Z>WWRL3?J=X=#HM^X#%X#N!(_A5*4I@"+4I_82H;U M*4BKLP/"DJ8#AD-,H91ES\Q+]J,A >N.WF4->"'FU'N0N575D?/?A3FQ M.Q_5-W'M@^>:=XG-%-\[8R]$^,I=*]'?R:]L!DRU+R3P>77,J.<]3#TLTY]' MQ>V ICX7Y-=41/SW5+SGTBM2897V*- .<7 #X3WMT0019_2@ F7ZG?/B,V"[ M3V'+E7,A@E4KX;I]JB^(U'<\];0,<';I1_C)"B-^>\K9F QB_6X?*NB!O@,H MOWE-\#?V '^HEW#]X_GS9;YRSZG1O@;)B"**.E*EWTZMHVS'EZ2=1QM M"?NUI>WY(DL?Q>Z&U6L>T0BO,!T-JQ/W93-!\ 'FL 0!C9'AS+3(P,C4P,S,Q7V-A M;"YX;6Q02P$"% ,4 " E@JY:>9)/0[4Z !VA@( %0 M@ %0S $ 8V1X&UL4$L! A0#% @ )8*N6L88 M8K$YY@ KN<( !4 ( !. <" &-D>',M,C R-3 S,S%?;&%B M+GAM;%!+ 0(4 Q0 ( "6"KEJ30-_-XGX /?0!0 5 " M :3M @!C9'AS+3(P,C4P,S,Q7W!R92YX;6Q02P$"% ,4 " E@JY:DDC7 M/9 ' !G)0 %P @ &Y; , 8V1X#,Q M,2YH=&U02P$"% ,4 " E@JY:BKBWU'@' R)0 %P M@ %^= , 8V1X#,Q,BYH=&U02P$"% ,4 " E@JY: M&0_K3]T$ "V%@ %P @ $K? , 8V1X#,R,2YH=&U02P$"% ,4 " E@JY:%EF?)3L* !Z. '@ M @ $]@0, 8V]D97AI#$P,6%M96YD;65N=#%T;VXN:'1M4$L%!@ 0 * H I0( +2+ P $! end XML 82 cdxs-20250331_htm.xml IDEA: XBRL DOCUMENT 0001200375 2025-01-01 2025-03-31 0001200375 2025-05-09 0001200375 2025-03-31 0001200375 2024-12-31 0001200375 us-gaap:ProductMember 2025-01-01 2025-03-31 0001200375 us-gaap:ProductMember 2024-01-01 2024-03-31 0001200375 cdxs:ResearchAndDevelopmentRevenueMember 2025-01-01 2025-03-31 0001200375 cdxs:ResearchAndDevelopmentRevenueMember 2024-01-01 2024-03-31 0001200375 2024-01-01 2024-03-31 0001200375 us-gaap:CommonStockMember 2024-12-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2024-12-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-12-31 0001200375 us-gaap:RetainedEarningsMember 2024-12-31 0001200375 us-gaap:CommonStockMember 2025-01-01 2025-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2025-01-01 2025-03-31 0001200375 us-gaap:RetainedEarningsMember 2025-01-01 2025-03-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2025-01-01 2025-03-31 0001200375 us-gaap:CommonStockMember 2025-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2025-03-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2025-03-31 0001200375 us-gaap:RetainedEarningsMember 2025-03-31 0001200375 us-gaap:CommonStockMember 2023-12-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2023-12-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-12-31 0001200375 us-gaap:RetainedEarningsMember 2023-12-31 0001200375 2023-12-31 0001200375 us-gaap:CommonStockMember 2024-01-01 2024-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2024-01-01 2024-03-31 0001200375 us-gaap:RetainedEarningsMember 2024-01-01 2024-03-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-01-01 2024-03-31 0001200375 us-gaap:CommonStockMember 2024-03-31 0001200375 us-gaap:AdditionalPaidInCapitalMember 2024-03-31 0001200375 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-31 0001200375 us-gaap:RetainedEarningsMember 2024-03-31 0001200375 2024-03-31 0001200375 us-gaap:EMEAMember 2025-01-01 2025-03-31 0001200375 us-gaap:EMEAMember 2024-01-01 2024-03-31 0001200375 srt:AmericasMember 2025-01-01 2025-03-31 0001200375 srt:AmericasMember 2024-01-01 2024-03-31 0001200375 cdxs:APACMember 2025-01-01 2025-03-31 0001200375 cdxs:APACMember 2024-01-01 2024-03-31 0001200375 cdxs:ShortTermUnbilledReceivablesMember 2025-03-31 0001200375 cdxs:LongTermUnbilledReceivablesMember 2025-03-31 0001200375 cdxs:ShortTermUnbilledReceivablesMember 2024-12-31 0001200375 cdxs:LongTermUnbilledReceivablesMember 2024-12-31 0001200375 us-gaap:ProductMember 2025-04-01 2025-03-31 0001200375 us-gaap:ProductMember 2026-01-01 2025-03-31 0001200375 us-gaap:ProductMember 2027-01-01 2025-03-31 0001200375 us-gaap:ProductMember 2028-01-01 2025-03-31 0001200375 us-gaap:ProductMember 2025-03-31 0001200375 us-gaap:StockCompensationPlanMember 2025-01-01 2025-03-31 0001200375 us-gaap:StockCompensationPlanMember 2024-01-01 2024-03-31 0001200375 us-gaap:WarrantMember 2025-01-01 2025-03-31 0001200375 us-gaap:WarrantMember 2024-01-01 2024-03-31 0001200375 us-gaap:EmployeeStockMember 2025-01-01 2025-03-31 0001200375 us-gaap:EmployeeStockMember 2024-01-01 2024-03-31 0001200375 cdxs:SeqWellMember 2025-03-31 0001200375 cdxs:SeqWellMember 2024-12-31 0001200375 us-gaap:OtherAggregatedInvestmentsMember 2025-03-31 0001200375 us-gaap:OtherAggregatedInvestmentsMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2025-03-31 0001200375 us-gaap:FairValueInputsLevel2Member 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member 2025-03-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member 2025-03-31 0001200375 us-gaap:CashAndCashEquivalentsMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel1Member us-gaap:MoneyMarketFundsMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CommercialPaperMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:CorporateDebtSecuritiesMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USGovernmentCorporationsAndAgenciesSecuritiesMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member us-gaap:USTreasurySecuritiesMember 2024-12-31 0001200375 us-gaap:FairValueInputsLevel2Member 2024-12-31 0001200375 us-gaap:CashAndCashEquivalentsMember us-gaap:FairValueInputsLevel2Member 2024-12-31 0001200375 us-gaap:ShortTermInvestmentsMember us-gaap:FairValueInputsLevel2Member 2024-12-31 0001200375 us-gaap:ConvertibleDebtMember 2024-01-01 2024-03-31 0001200375 us-gaap:ConvertibleDebtMember 2025-01-01 2025-03-31 0001200375 cdxs:LaboratoryEquipmentMember 2025-03-31 0001200375 cdxs:LaboratoryEquipmentMember 2024-12-31 0001200375 us-gaap:LeaseholdImprovementsMember 2025-03-31 0001200375 us-gaap:LeaseholdImprovementsMember 2024-12-31 0001200375 us-gaap:ComputerEquipmentMember 2025-03-31 0001200375 us-gaap:ComputerEquipmentMember 2024-12-31 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2025-03-31 0001200375 cdxs:OfficeEquipmentAndFurnitureMember 2024-12-31 0001200375 us-gaap:ConstructionInProgressMember 2025-03-31 0001200375 us-gaap:ConstructionInProgressMember 2024-12-31 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2025-01-01 2025-03-31 0001200375 us-gaap:ResearchAndDevelopmentExpenseMember 2024-01-01 2024-03-31 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2025-01-01 2025-03-31 0001200375 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2024-01-01 2024-03-31 0001200375 us-gaap:EmployeeStockMember 2023-04-01 2023-04-30 0001200375 us-gaap:EmployeeStockMember 2023-04-30 0001200375 us-gaap:EmployeeStockMember 2025-03-31 0001200375 us-gaap:EmployeeStockMember 2025-01-01 2025-03-31 0001200375 us-gaap:EmployeeStockMember 2024-01-01 2024-03-31 0001200375 us-gaap:CostOfSalesMember 2025-01-01 2025-03-31 0001200375 us-gaap:CostOfSalesMember 2024-01-01 2024-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2025-01-01 2025-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2024-01-01 2024-03-31 0001200375 cdxs:RSUsAndRSAsMember 2025-01-01 2025-03-31 0001200375 cdxs:RSUsAndRSAsMember 2024-01-01 2024-03-31 0001200375 cdxs:PerformanceStockUnitsMember 2025-01-01 2025-03-31 0001200375 cdxs:PerformanceStockUnitsMember 2024-01-01 2024-03-31 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2025-01-01 2025-03-31 0001200375 cdxs:PerformanceBasedOptionsPBOsMember 2024-01-01 2024-03-31 0001200375 us-gaap:EmployeeStockOptionMember 2025-03-31 0001200375 cdxs:RSUsAndRSAsMember 2025-03-31 0001200375 2023-02-27 0001200375 cdxs:PiperSandlerCoMember 2021-05-01 2021-05-31 0001200375 srt:MaximumMember cdxs:PiperSandlerCoMember 2021-05-31 0001200375 cdxs:CantorSalesAgreementMember 2024-05-02 2024-05-02 0001200375 cdxs:CantorSalesAgreementMember 2024-05-02 0001200375 cdxs:CantorMember 2024-01-01 2024-12-31 0001200375 cdxs:CantorMember 2025-01-01 2025-03-31 0001200375 cdxs:CantorMember 2024-03-31 0001200375 us-gaap:IndemnificationGuaranteeMember 2024-03-31 0001200375 us-gaap:IndemnificationGuaranteeMember 2024-12-31 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-02-13 2024-02-13 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:InnovatusLoanFirstTrancheMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:InnovatusLoanSecondTrancheMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:TermLoanMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:InnovatusLoanMember 2024-02-13 0001200375 srt:MaximumMember cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 srt:MinimumMember cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-03-31 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2025-01-01 2025-03-31 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2024-01-01 2024-03-31 0001200375 cdxs:InnovatusLoanMember us-gaap:SecuredDebtMember 2025-03-31 0001200375 cdxs:InnovatusLoanWarrantsMember us-gaap:SecuredDebtMember 2024-02-13 0001200375 cdxs:CustomerAMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2025-01-01 2025-03-31 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2025-01-01 2025-03-31 0001200375 cdxs:CustomerBMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-03-31 0001200375 cdxs:CustomerCMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2025-01-01 2025-03-31 0001200375 cdxs:CustomerCMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-03-31 0001200375 cdxs:CustomerDMember us-gaap:SalesRevenueProductLineMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-03-31 0001200375 cdxs:CustomerCMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2025-01-01 2025-03-31 0001200375 cdxs:CustomerCMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-12-31 0001200375 cdxs:CustomerEMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2025-01-01 2025-03-31 0001200375 cdxs:CustomerEMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-12-31 0001200375 cdxs:CustomerFMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-12-31 0001200375 cdxs:CustomerGMember us-gaap:AccountsReceivableMember us-gaap:CustomerConcentrationRiskMember 2024-01-01 2024-12-31 0001200375 country:US 2025-03-31 0001200375 country:US 2024-12-31 0001200375 cdxs:KevinNorrettMember 2025-01-01 2025-03-31 0001200375 cdxs:KevinNorrettMember 2025-03-31 shares iso4217:USD iso4217:USD shares cdxs:segment pure cdxs:tranche 0001200375 false 2025 Q1 --12-31 P9M P1Y P1Y P1Y http://fasb.org/us-gaap/2024#PrimeRateMember P325D 10-Q true 2025-03-31 false 001-34705 Codexis, Inc. DE 71-0872999 200 Penobscot Drive Redwood City CA 94063 650 421-8100 Common Stock, par value $0.0001 per share CDXS NASDAQ Yes Yes Non-accelerated Filer true false false 82844849 18319000 19264000 504000 503000 41462000 54194000 6442000 11920000 1788000 4375000 3406000 2751000 11636000 19046000 49000 162000 11587000 18884000 1781000 1799000 4155000 4128000 77808000 98772000 1062000 1062000 2798000 2798000 27986000 28700000 15803000 14197000 2463000 2463000 967000 1019000 128887000 149011000 6046000 2838000 6387000 11410000 5117000 6223000 2913000 2827000 438000 350000 20901000 23648000 490000 100000 27398000 28163000 29186000 28905000 1283000 1268000 79258000 82084000 0.0001 0.0001 5000000 5000000 0 0 0 0 0 0 0.0001 0.0001 200000000 200000000 82841000 82841000 81850000 81850000 8000 8000 633101000 629673000 14000 52000 -583494000 -562806000 49629000 66927000 128887000 149011000 6059000 9551000 1484000 7522000 7543000 17073000 2732000 4855000 12942000 11246000 12355000 12860000 28029000 28961000 -20486000 -11888000 751000 909000 -942000 -516000 -20677000 -11495000 11000 10000 -20688000 -11505000 -0.25 -0.25 -0.16 -0.16 82410000 82410000 69854000 69854000 -20688000 -11505000 -38000 -16000 -20726000 -11521000 81850000 8000 629673000 52000 -562806000 66927000 339000 1049000 1049000 652000 2379000 2379000 -20688000 -20688000 -38000 -38000 82841000 8000 633101000 14000 -583494000 49629000 69905000 7000 584138000 0 -497530000 86615000 73000 143000 143000 576000 859000 859000 3171000 3171000 -11505000 -11505000 -16000 -16000 70554000 7000 588311000 -16000 -509035000 79267000 -20688000 -11505000 1195000 1252000 714000 773000 2379000 3171000 -113000 0 281000 82000 -330000 -41000 -3000 -10000 -7426000 -5571000 -18000 -244000 -31000 146000 2065000 -2038000 6501000 3875000 -750000 -996000 478000 -271000 -13798000 -7789000 1256000 1130000 1000 11000 10326000 27444000 23350000 0 11769000 -28563000 1098000 281000 13000 60000 0 29521000 0 461000 1085000 29281000 -944000 -7071000 20829000 66697000 19885000 59626000 432000 147000 0 17000 2073000 371000 18319000 58046000 1566000 1580000 19885000 59626000 41500000 27500000 59800000 85500000 Description of Business<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In these notes to the unaudited condensed consolidated financial statements, the “Company,” “we,” “us,” and “our” refers to Codexis, Inc. and its subsidiaries on a consolidated basis.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We discover, develop, enhance, and commercialize novel, high performance enzymes and other classes of proteins leveraging our proprietary CodeEvolver</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:120%;position:relative;top:-3.5pt;vertical-align:baseline"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">directed evolution technology platform. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's operations are managed and reported to the Chief Executive Officer (“CEO”), our chief operating decision maker (“CODM”), on a consolidated basis as one reportable segment.</span></div> 1 Basis of Presentation and Summary of Significant Accounting Policies<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (“GAAP”) and the applicable rules and regulations of the Securities and Exchange Commission (“SEC”) for interim financial information but does not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2024. The condensed consolidated balance sheet at December 31, 2024 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three months ended March 31, 2025 and 2024, are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2024 Annual Report on Form 10-K and are updated below as necessary. There have been no significant changes in our significant accounting policies or critical accounting estimates since December 31, 2024.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of March 31, 2025 and results of operations for the interim periods presented. The interim results are not necessarily indicative of the results for any future interim period or for the entire year.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The unaudited condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, deferred revenue, inventories, valuation of equity investments, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the condensed consolidated financial statements.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Short-term Investments</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We classify all marketable debt securities that have effective maturities of three months or less from the date of purchase as cash equivalents and those with effective maturities of greater than three months as short-term investment securities in the condensed consolidated balance sheets. We determine the appropriate classification of our short-term investments at the time of purchase and reevaluate such designation at each balance sheet date. We have classified and accounted for our short-term investments as available-for-sale. After consideration of our risk versus reward objectives, as well as our liquidity requirements, we may sell these debt securities prior to their effective maturities. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry these short-term investments at fair value, and report the unrealized gains and losses, net of taxes, as a component of stockholders’ equity, except for the changes in allowance for expected credit losses, which are included in “Interest and other expense, net” in the unaudited condensed consolidated statements of operations. We determine any realized gains or losses on the sale of short-term investments on a specific identification method, and we record such gains and losses as a component of “Interest income” in the unaudited condensed consolidated statements of operations.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Short-term investments are reviewed periodically for allowances for credit losses and impairment. When evaluating the investments, the Company reviews factors such as the extent to which the fair value of the security is less than the amortized cost basis, adverse conditions specifically related to the security, the financial condition of the issuer, the Company’s intent to sell, and whether it would be more likely than not that the Company would be required to sell the investments before the recovery of the amortized cost basis.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Accounting Pronouncements</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recently adopted accounting pronouncements</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) No. 2023-09,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Income Taxes (Topic 740): Improvements to Income Tax Disclosures</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The amendments in the ASU require public companies, on an annual basis, to provide disclosures of specific categories in the rate reconciliation, as well as disclosure of income taxes paid disaggregated by jurisdiction. The standard was adopted beginning January 1, 2025 on a prospective basis. ASU No. 2023-09 will become effective in the Company’s Annual Report on Form 10-K for the year ending December 31, 2025 and we are continuing to evaluate whether adoption of this standard will have a material impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Aside from the recently adopted accounting pronouncements described above and recently issued accounting pronouncements not yet adopted and described below, there were no recent accounting pronouncements or changes in accounting pronouncements during the three months ended March 31, 2025, that are of significance or potential significance to us.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recently issued accounting pronouncements not yet adopted</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2024, the FASB issued ASU No. 2024-03, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amendment in the ASU will require additional disclosures and disaggregation of certain costs and expenses presented on the face of the income statement. In January 2025, the FASB issued ASU 2025-01, “</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40) - Clarifying the Effective Date</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">” to clarify the effective date for non-calendar year-end entities. This guidance is effective for the Company for fiscal years beginning after December 15, 2026. Early adoption is permitted. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In October 2023, FASB issued ASU No. 2023-06,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Disclosure Improvements: Codification Amendments in Response to the SEC’s Disclosure Update and Simplification Initiative</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The amendments in the ASU are intended to amend certain disclosure and presentation requirements for a variety of topics within the ASC. These amendments align the requirements in the ASC to the removal of certain disclosure requirements set out in Regulation S-X and Regulation S-K, as announced by the SEC. The effective date for each amended topic in the ASC is either the date on which the SEC’s removal of the related disclosure requirement from Regulation S-X or Regulation S-K becomes effective, or on June 30, 2027, if the SEC has not removed the requirements by that date. Early adoption is prohibited. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div> <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Basis of Presentation and Principles of Consolidation</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The accompanying unaudited condensed consolidated financial statements have been prepared in accordance with generally accepted accounting principles in the United States of America (“GAAP”) and the applicable rules and regulations of the Securities and Exchange Commission (“SEC”) for interim financial information but does not include all the information and notes required by GAAP for complete financial statements. These interim unaudited condensed consolidated financial statements should be read in conjunction with the audited consolidated financial statements and notes thereto contained in our Annual Report on Form 10-K for the year ended December 31, 2024. The condensed consolidated balance sheet at December 31, 2024 has been derived from the audited consolidated financial statements at that date, but does not include all disclosures, including notes, required by GAAP for complete financial statements. The significant accounting policies used in preparation of the unaudited condensed consolidated financial statements for the three months ended March 31, 2025 and 2024, are consistent with those discussed in Note 2 to the audited consolidated financial statements in the Company’s 2024 Annual Report on Form 10-K and are updated below as necessary. There have been no significant changes in our significant accounting policies or critical accounting estimates since December 31, 2024.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The unaudited condensed consolidated financial statements have been prepared on the same basis as the audited consolidated financial statements and, in the opinion of management, reflect all adjustments of a normal recurring nature considered necessary to present fairly our financial position as of March 31, 2025 and results of operations for the interim periods presented. The interim results are not necessarily indicative of the results for any future interim period or for the entire year.</span></div> The unaudited condensed consolidated financial statements include the accounts of Codexis, Inc. and its wholly-owned subsidiaries. All intercompany balances and transactions have been eliminated in consolidation. <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Use of Estimates</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The preparation of our unaudited condensed consolidated financial statements in conformity with GAAP requires us to make estimates, judgments and assumptions that may affect the reported amounts of assets, liabilities, equity, revenues and expenses and related disclosure of contingent assets and liabilities. We regularly assess these estimates which primarily affect revenue recognition, deferred revenue, inventories, valuation of equity investments, goodwill arising out of business acquisitions, accrued liabilities, stock awards, and the valuation allowances associated with deferred tax assets. Actual results could differ from those estimates and such differences may be material to the condensed consolidated financial statements.</span></div> <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Short-term Investments</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We classify all marketable debt securities that have effective maturities of three months or less from the date of purchase as cash equivalents and those with effective maturities of greater than three months as short-term investment securities in the condensed consolidated balance sheets. We determine the appropriate classification of our short-term investments at the time of purchase and reevaluate such designation at each balance sheet date. We have classified and accounted for our short-term investments as available-for-sale. After consideration of our risk versus reward objectives, as well as our liquidity requirements, we may sell these debt securities prior to their effective maturities. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We carry these short-term investments at fair value, and report the unrealized gains and losses, net of taxes, as a component of stockholders’ equity, except for the changes in allowance for expected credit losses, which are included in “Interest and other expense, net” in the unaudited condensed consolidated statements of operations. We determine any realized gains or losses on the sale of short-term investments on a specific identification method, and we record such gains and losses as a component of “Interest income” in the unaudited condensed consolidated statements of operations.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Short-term investments are reviewed periodically for allowances for credit losses and impairment. When evaluating the investments, the Company reviews factors such as the extent to which the fair value of the security is less than the amortized cost basis, adverse conditions specifically related to the security, the financial condition of the issuer, the Company’s intent to sell, and whether it would be more likely than not that the Company would be required to sell the investments before the recovery of the amortized cost basis.</span></div> <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Accounting Pronouncements</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recently adopted accounting pronouncements</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the Financial Accounting Standards Board (“FASB”) issued Accounting Standards Update (“ASU”) No. 2023-09,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Income Taxes (Topic 740): Improvements to Income Tax Disclosures</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The amendments in the ASU require public companies, on an annual basis, to provide disclosures of specific categories in the rate reconciliation, as well as disclosure of income taxes paid disaggregated by jurisdiction. The standard was adopted beginning January 1, 2025 on a prospective basis. ASU No. 2023-09 will become effective in the Company’s Annual Report on Form 10-K for the year ending December 31, 2025 and we are continuing to evaluate whether adoption of this standard will have a material impact on our unaudited condensed consolidated financial statements and related disclosures.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Aside from the recently adopted accounting pronouncements described above and recently issued accounting pronouncements not yet adopted and described below, there were no recent accounting pronouncements or changes in accounting pronouncements during the three months ended March 31, 2025, that are of significance or potential significance to us.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Recently issued accounting pronouncements not yet adopted</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2024, the FASB issued ASU No. 2024-03, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40): Disaggregation of Income Statement Expenses. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amendment in the ASU will require additional disclosures and disaggregation of certain costs and expenses presented on the face of the income statement. In January 2025, the FASB issued ASU 2025-01, “</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Income Statement-Reporting Comprehensive Income-Expense Disaggregation Disclosures (Subtopic 220-40) - Clarifying the Effective Date</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">” to clarify the effective date for non-calendar year-end entities. This guidance is effective for the Company for fiscal years beginning after December 15, 2026. Early adoption is permitted. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In October 2023, FASB issued ASU No. 2023-06,</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%"> Disclosure Improvements: Codification Amendments in Response to the SEC’s Disclosure Update and Simplification Initiative</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The amendments in the ASU are intended to amend certain disclosure and presentation requirements for a variety of topics within the ASC. These amendments align the requirements in the ASC to the removal of certain disclosure requirements set out in Regulation S-X and Regulation S-K, as announced by the SEC. The effective date for each amended topic in the ASC is either the date on which the SEC’s removal of the related disclosure requirement from Regulation S-X or Regulation S-K becomes effective, or on June 30, 2027, if the SEC has not removed the requirements by that date. Early adoption is prohibited. We are currently evaluating the effects of the standard on our consolidated financial statements and related disclosures.</span></div> Revenue Recognition<div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Disaggregation of Revenue</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table provides information about disaggregated revenue from contracts with customers by</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> g</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">eographic regions. The geographic regions that are tracked are the Americas (United States, Canada, and Latin America), EMEA (Europe, Middle East, and Africa), and APAC (Australia, New Zealand, Southeast Asia, and China).</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Disaggregated information is as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Primary geographical markets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EMEA</span></div></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,919 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,572 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Americas</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,088 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,244 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">APAC</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,536 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,257 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,543 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,073 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Contract Balances</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents balances of contract assets, unbilled receivables, and contract liabilities (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,788 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,375 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,849 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,208 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract liabilities: deferred revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">450 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We ha</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">d no a</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">sset impairment charges related to financial assets in the three months ended March 31, 2025 and 2024.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The decrease in contract assets was primarily due to decreases in product revenue from contracts subject to over time revenue recognition. The increase in unbilled receivables was primarily due to the timing of billings. The increase in deferred revenue was primarily due to the timing of recognition of revenue.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2025, we have $3.4 million of short-term unbilled receivables presented as unbilled receivables within current assets and $0.4 million of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets. As of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">December 31, 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, we had </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$2.8 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of short-term unbilled receivables presented as unbilled receivables within current assets and </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$0.5 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> of long-term unbilled receivables that is included within the other non-current assets line item in the condensed consolidated balance sheets.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognized the following revenues (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized in the period for:</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts included in contract liabilities at the beginning of the period:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance obligations satisfied</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">250 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in the period:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">189 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance obligations satisfied from new activities in the period - contract revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,906 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,513 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,543 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,073 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Performance Obligations</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of March 31, 2025.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Th</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">e balances in the table below </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts as of March 31, 2025 (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:37.992%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Remainder of 2025</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2028 and Thereafter</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">428 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div> <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Disaggregated information is as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Primary geographical markets:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">EMEA</span></div></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,919 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,572 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Americas</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,088 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,244 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">APAC</span></div></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,536 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,257 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,543 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,073 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 3919000 2572000 2088000 7244000 1536000 7257000 7543000 17073000 <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents balances of contract assets, unbilled receivables, and contract liabilities (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract assets</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,788 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,375 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unbilled receivables</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,849 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,208 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract liabilities: deferred revenue</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">450 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We recognized the following revenues (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized in the period for:</span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amounts included in contract liabilities at the beginning of the period:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance obligations satisfied</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">250 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">371 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in the period:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Changes in the estimated transaction price allocated to performance obligations satisfied in prior periods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">387 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">189 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance obligations satisfied from new activities in the period - contract revenue</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,906 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,513 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total revenues</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,543 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,073 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> 1788000 4375000 3849000 3208000 928000 450000 0 0 3400000 400000 2800000 500000 250000 371000 387000 189000 6906000 16513000 7543000 17073000 <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table includes estimated revenue expected to be recognized in the future related to performance obligations that are unsatisfied or partially unsatisfied at the end of the reporting periods. The estimated revenue does not include contracts with original durations of one year or less, amounts of variable consideration attributable to royalties, or contract renewals that are unexercised as of March 31, 2025.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Th</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">e balances in the table below </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">are partially based on judgments involved in estimating future orders from customers subject to the exercise of material rights pursuant to respective contracts as of March 31, 2025 (in thousands): </span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:37.992%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.613%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.385%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.616%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Remainder of 2025</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2026</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2027</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2028 and Thereafter</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Product revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">428 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">320 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">928 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr></table></div> 428000 140000 40000 320000 928000 N<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">et Loss per S</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">hare</span><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Basic net loss per share is computed by dividing the net loss by the weighted-average number of shares of common stock outstanding, less restricted stock awards (“RSAs”) subject to forfeiture. Diluted net loss per share is computed by dividing net loss by the weighted-average number of shares of common stock shares outstanding, less RSAs subject to forfeiture, plus all additional common shares that would have been outstanding, assuming dilutive potential common stock shares had been issued for other dilutive securities. For all periods presented, diluted and basic net loss per share are identical since potential common stock shares are excluded from the calculation, as their effect was anti-dilutive.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Anti-Dilutive Securities</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In periods of net loss, the weighted average number of shares outstanding, prior to the application of the treasury stock method, excludes potentially dilutive securities from the computation of diluted net loss per common share because including such shares would have an anti-dilutive effect.</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following shares were not considered in the computation of diluted net loss per share because their effect was anti-dilutive (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shares issuable under the Equity Incentive Plan and ESPP</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,800</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,105</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warrants</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total potentially dilutive securities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,224</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,529</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="padding-left:10.8pt;text-indent:-10.8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:4.55pt;font-weight:400;line-height:120%;position:relative;top:-2.44pt;vertical-align:baseline">(</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Included 386,635 and 568,224 of anti-dilutive potential common shares from ESPP for the three months ended March 31, 2025 and 2024, respectively.</span></div><div style="margin-bottom:9pt;padding-left:10.8pt;text-indent:-10.8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Pertains to the warrants issued in connection with the Innovatus Loan. For additional information, see Note 11, “Debt.”</span></div> <div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following shares were not considered in the computation of diluted net loss per share because their effect was anti-dilutive (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Shares issuable under the Equity Incentive Plan and ESPP</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,800</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,105</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Warrants</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">424</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total potentially dilutive securities</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,224</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,529</span></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="padding-left:10.8pt;text-indent:-10.8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:4.55pt;font-weight:400;line-height:120%;position:relative;top:-2.44pt;vertical-align:baseline">(</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Included 386,635 and 568,224 of anti-dilutive potential common shares from ESPP for the three months ended March 31, 2025 and 2024, respectively.</span></div><div style="margin-bottom:9pt;padding-left:10.8pt;text-indent:-10.8pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> Pertains to the warrants issued in connection with the Innovatus Loan. For additional information, see Note 11, “Debt.”</span></div> 13800000 13105000 424000 424000 14224000 13529000 386635 568224000 Investments in Non-Marketable Securities<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Non-Marketable Equity Securities</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Our non-marketable equity securities are investments in privately held companies without readily determinable market value and primarily relate to our investments in seqWell Inc. (“seqWell”) and other investments in non-marketable equity securities. These investments are accounted for under the measurement alternative and are measured at cost minus impairment, if any, plus or minus changes resulting from observable price changes for identical or similar securities of the same issuer. Non-marketable equity securities are measured at fair value on a non-recurring basis and classified within Level 2 in the fair value hierarchy when we estimate the fair value of these investments using the observable transaction price paid by third party investors for the same or similar security of the same issuers. The fair value of non-marketable equity securities are classified within Level 3 when we estimate fair value using unobservable inputs such as when we remeasure due to impairment and we use discount rates, market data of comparable companies, and rights and obligations of the securities the Company holds, among others. We adjust the carrying value of non-marketable equity securities which have been remeasured during the period and recognize resulting gains or losses as a component of interest and other expense, net in the unaudited condensed consolidated statements of operations.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There was no remeasurement event for our investments in non-marketable equity securities that occurred during the three months ended March 31, 2025 and 2024. We recognized</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> no</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> realized gains or losses during the three months ended March 31, 2025 and 2024. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the carrying value of our non-marketable equity securities (in thousands):</span></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">seqWell</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other investments in non-marketable equity securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">382 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">382 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total non-marketable equity securities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,798 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,798 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 0 0 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the carrying value of our non-marketable equity securities (in thousands):</span></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">seqWell</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other investments in non-marketable equity securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">382 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">382 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:middle"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total non-marketable equity securities</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,798 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,798 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 2416000 2416000 382000 382000 2798000 2798000 Fair Value Measurements<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables show the Company’s cash, cash equivalents, and short-term investments by significant investment category as of March 31, 2025 and December 31, 2024 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.605%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Gains</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Losses</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Cash and Cash Equivalents</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Short-term Investments</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,123 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,123 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,719 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,404 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,244 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,238 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,238 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,995 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,805 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,824 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,824 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subtotal</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,167 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,181 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,719 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,462 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,767 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,781 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,319 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,462 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.605%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Gains</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Losses</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Cash and Cash Equivalents</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Short-term Investments</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,768 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,769 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,769 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,187 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,180 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,180 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,989 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,991 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,991 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,198 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subtotal</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,142 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,406 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,458 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,264 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> The valuation techniques used to measure the fair values of the Company’s Level 2 financial instruments uses inputs that are either directly or indirectly observable for the asset through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We limit the credit risk associated with our cash equivalents and short-term investments by placing them with banks and institutions we believe are highly credit-worthy and investing in highly-rated investments. As of March 31, 2025 and December 31, 2024, the contractual maturity of all investments held was less than one year. </span></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended March 31, 2025 and 2024, </span>we did not recognize any significant credit losses nor other-than-temporary impairment losses on our short-term investments. <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following tables show the Company’s cash, cash equivalents, and short-term investments by significant investment category as of March 31, 2025 and December 31, 2024 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.605%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Gains</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Losses</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Cash and Cash Equivalents</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Short-term Investments</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,209 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,123 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,123 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,719 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,404 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,244 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,238 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,238 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,995 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,805 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,824 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,824 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subtotal</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,167 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,181 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,719 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,462 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,767 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,781 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,319 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,462 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:25.800%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.605%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="33" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Gains</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Unrealized Losses</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Fair Value</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Cash and Cash Equivalents</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Short-term Investments</span></div></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,284 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 1:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></div></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,980 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Level 2</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Commercial paper</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,768 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,769 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,769 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate debt</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,187 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,180 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,180 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. agency securities</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,989 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,991 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,991 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">U.S. treasury securities</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,198 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Subtotal</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,142 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,406 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">67 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73,458 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,264 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,194 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span> The valuation techniques used to measure the fair values of the Company’s Level 2 financial instruments uses inputs that are either directly or indirectly observable for the asset through correlation with market data at the measurement date and for the duration of the instrument’s anticipated life. 4391000 4391000 4391000 0 6209000 0 0 6209000 6209000 0 15123000 2000 2000 15123000 7719000 7404000 11244000 2000 8000 11238000 0 11238000 1995000 1000 0 1996000 0 1996000 20805000 19000 0 20824000 0 20824000 49167000 24000 10000 49181000 7719000 41462000 59767000 24000 10000 59781000 18319000 41462000 3284000 3284000 3284000 0 15980000 0 0 15980000 15980000 0 6768000 1000 0 6769000 0 6769000 17187000 8000 15000 17180000 0 17180000 1989000 2000 0 1991000 0 1991000 28198000 56000 0 28254000 0 28254000 54142000 67000 15000 54194000 0 54194000 73406000 67000 15000 73458000 19264000 54194000 0 0 0 0 Balance Sheet Details<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Inventories</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work in process</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,770 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,799 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Prepaid expenses and other current assets</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2025, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million. As of December 31, 2024, prepaid expenses and other current assets consisted of prepaid expenses of $3.7 million and other current assets of $0.5 million.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Property and Equipment, net</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Laboratory equipment</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,198 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,949 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,256 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,534 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,459 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office equipment and furniture</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,223 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,441 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57,375 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,132 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(40,935)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,803 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,197 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense included in both research and development expenses and selling, general and administrative expenses in the unaudited condensed consolidated statements of operations was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">946 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total depreciation expense</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,158 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,252 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Other Accrued Liabilities</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other accrued liabilities consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued purchases </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,544 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,908 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued professional and outside service fees</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,064 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total other accrued liabilities</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,117 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,223 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work in process</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,770 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,781 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,799 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> 0 29000 1781000 1770000 1781000 1799000 3700000 500000 3700000 500000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Property and equipment, net consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Laboratory equipment</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,198 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,949 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Leasehold improvements</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,256 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Computer equipment and software</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,534 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,459 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Office equipment and furniture</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction in progress</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,223 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,441 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment</span></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57,375 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,132 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: accumulated depreciation and amortization</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41,572)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(40,935)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Property and equipment, net</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,803 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,197 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Depreciation expense included in both research and development expenses and selling, general and administrative expenses in the unaudited condensed consolidated statements of operations was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">946 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">212 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">220 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:12pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total depreciation expense</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,158 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,252 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 36198000 35949000 14256000 12159000 2534000 2459000 1164000 1124000 3223000 3441000 57375000 55132000 41572000 40935000 15803000 14197000 946000 1032000 212000 220000 1158000 1252000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Other accrued liabilities consisted of the following (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued purchases </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,544 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,908 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued professional and outside service fees</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,396 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,064 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">251 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total other accrued liabilities</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,117 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,223 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> 2544000 2908000 2396000 3064000 177000 251000 5117000 6223000 Stock-based Compensation<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Employee Stock Purchase Plan</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In April 2023, our Board of Directors approved an employee stock purchase plan (as may be amended from time to time, the “ESPP”) which became effective upon approval at the 2023 Annual Meeting. The ESPP allows eligible employees of the Company to purchase shares of our common stock through payroll deductions. Offering periods are generally over a 24-month period and begin in May and November of each year. The per share purchase price will be the lower of 85% of the closing trading price per share of our common stock on the first trading date of an offering period in which a participant is enrolled or 85% of the closing trading price per share on the purchase date. Participant purchases are limited to a maximum of $25,000 of fair value of our stock per calendar year. The Company is authorized to grant up to 2,000,000 shares of common stock under the ESPP. The first offering period of the ESPP commenced in December 2023. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No shares of our common stock were purchased under the ESPP during the three months ended March 31, 2025 and 2024. As of March 31, 2025, 1,736,843 shares of common stock were available for future issuance under the ESPP. We recognized $0.1 million of stock-based compensation expenses related to the ESPP for each of the three months ended March 31, 2025 and 2024. As of March 31, 2025, the total unrecognized stock-based compensation expense, net of expected forfeitures, related to the ESPP was $0.4 million and is expected to be recognized over the remaining offering period.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Stock-Based Compensation Expense </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of product revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">665 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">820 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,236 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,171 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock options</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,355 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,514 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RSUs and RSAs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">919 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,317 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-contingent restricted stock units (“PSUs”)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">247 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance based options (“PBOs”)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ESPP</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,171 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2025, unr</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">ecognized stock-based compensation expense, net of expected forfeitures, was $12.3 million related to unvested stock options and $5.6 million related to unvested RSUs and RSAs. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense for these awards will be recognized through 2029.</span></div> P24M 0.85 0.85 25000 2000000 0 0 1736843 100000 100000 400000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock-based compensation expense is included in the unaudited condensed consolidated statements of operations as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of product revenue</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research and development </span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">665 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">820 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Selling, general and administrative</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,653 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,236 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,171 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> 61000 115000 665000 820000 1653000 2236000 2379000 3171000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents total stock-based compensation expense by security type included in the unaudited condensed consolidated statements of operations (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock options</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,355 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,514 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">RSUs and RSAs</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">919 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,317 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance-contingent restricted stock units (“PSUs”)</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">247 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance based options (“PBOs”)</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">ESPP</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">105 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">77 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,379 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,171 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000000;padding:0 1pt"></td></tr></table></div> 1355000 1514000 919000 1317000 0 247000 0 16000 105000 77000 2379000 3171000 12300000 5600000 Capital Stock<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Exercise of Options</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2025 and March 31, 2024, we issued 339,142 and 72,856 shares, respectively, upon option exercises at a weighted-average exercise price of $3.09 and $1.97 per share, respectively, with net cash proceeds of $1.0 million and $0.1 million, respectively. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Sales Agreements</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In May 2021, we filed a Registration Statement on Form S-3 with the SEC (the “2021 Registration Statement”), that automatically became effective upon its filing, under which we were permitted to sell common stock, preferred stock, debt securities, warrants, purchase contracts, and units from time to time in one or more offerings. On February 27, 2023, we filed a post-effective amendment to the 2021 Registration Statement. Pursuant to that post-effective amendment, we registered an aggregate $200.0 million of securities. In May 2021, we entered into an Equity Distribution Agreement (“EDA”) with Piper Sandler &amp; Co (“PSC”), under which PSC, as our exclusive agent, at our discretion and at such times that we determined from time to time, may have sold over a three-year period from the execution of the EDA up to a maximum of $50.0 million of shares of our common stock. Under the terms of the EDA, PSC was permitted to sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act of 1933, as amended (the “Securities Act”).</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We were not required to sell any shares at any time during the term of the EDA. </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On April 24, 2024, we terminated the EDA. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">No shares of our common stock were issued and sold pursuant to the EDA during the three months ended March 31, 2024. </span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On May 2, 2024, we entered into a Controlled Equity Offering℠ Sales Agreement (the “Cantor Sales Agreement”) with Cantor Fitzgerald &amp; Co., as sales agent (“Cantor”), under which Cantor, at our discretion and at such times that we may determine from time to time, may sell up to a maximum of $75.0 million of shares of our common stock. Under the terms of the Cantor Sales Agreement, Cantor may sell the shares at market prices by any method that is deemed to be an “at the market offering” as defined in Rule 415 under the Securities Act. On May 2, 2024, we filed a registration statement on Form S-3 registering the offer and sale of these shares under the Securities Act which became effective on May 14, 2024. We will pay a commission of up to 3.0% of gross sales proceeds of any common stock sold under the Cantor Sales Agreement. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In 2024, 10,440,000 shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement, all during the third quarter of 2024, and we received net proceeds of $29.7 million after Cantors’ commissions and direct offering expenses.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the three months ended March 31, 2025, no shares of our common stock were issued and sold pursuant to the Cantor Sales Agreement. As of March 31, 2024, $43.7 million remained available for sale under the Cantor Sales Agreement.</span></div> 339142 72856 3.09 1.97 1000000.0 100000 200000000 P3Y 50000000 0 75000000 0.030 10440000 29700000 0 43700000 Commitments and Contingencies<div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Lease and other information</span></div><div style="text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has entered into operating leases primarily for office and laboratory space. Lease costs amounts included in the measurement of lease obligations and other information related to non-cancellable operating leases were as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,243 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> The Company had no variable lease costs.</span></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:82.379%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.421%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Other information:</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term (in years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.6 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Cash paid </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,208 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,173 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2025, our maturity analysis of annual undiscounted cash flows of the non-cancellable operating leases are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Years Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025 (remaining 9 months)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,660 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,014 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,053 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,400 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,365 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,695 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,187 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: imputed interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,876 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,311 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reconciliation of operating lease liabilities as shown within the unaudited condensed consolidated balance sheets (in thousands):</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of lease obligations - Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,913 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations - Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,398 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,311 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Other Commitments</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We enter into supply and service arrangements in the normal course of business. Supply arrangements are primarily for fixed-price manufacture and supply. Service agreements are primarily for the development of manufacturing processes and certain studies. Commitments under service agreements are subject to cancellation at our discretion which may require payment of certain cancellation fees. The timing of completion of service arrangements is subject to variability in estimates of the time required to complete the work. As of March 31, 2025, the future minimum payments that we expect to pay, including potential obligations under services agreements subject to risk of cancellation by us, is minimal.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Legal Proceedings</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We may be involved in legal actions in the ordinary course of business, including inquiries and proceedings concerning business practices and intellectual property infringement, employee relations and other claims. We will recognize a loss contingency in the consolidated financial statements when it is probable a liability has been incurred and the amount of the loss can be reasonably estimated. We will disclose any loss contingencies that do not meet both conditions if there is a reasonable possibility that a material loss may have been incurred. Gain contingencies are not recorded until they are realized.</span></div><div style="margin-bottom:9pt;margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are currently not a party to any material pending litigation or other material legal proceedings that management believes could have a material adverse effect on our financial statements.</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Indemnifications</span></div><div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We are required to recognize a liability for the fair value of any obligations we assume upon the issuance of a guarantee. We have certain agreements with licensors, licensees and collaborators that contain indemnification provisions. In such provisions, we typically agree to indemnify the licensor, licensee and collaborator against certain types of third-party claims. The maximum amount of the indemnifications is not limited. We accrue for known indemnification issues when a loss is probable and can be reasonably estimated. There were no accruals for expenses related to indemnification issues for any periods presented.</span></div> Lease costs amounts included in the measurement of lease obligations and other information related to non-cancellable operating leases were as follows (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating lease cost</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,243 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table><div style="margin-bottom:9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:120%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%"> The Company had no variable lease costs.</span></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:82.379%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.421%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Other information:</span></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average remaining lease term (in years)</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.6 years</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average discount rate</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7.0 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr></table></div><div style="margin-bottom:9pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Cash paid </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(in thousands)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">:</span></div></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating cash flows from operating leases</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,208 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,173 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1243000 1032000 0 0 P7Y7M6D 0.070 1208000 1173000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2025, our maturity analysis of annual undiscounted cash flows of the non-cancellable operating leases are as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Years Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Operating Leases</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025 (remaining 9 months)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,660 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,014 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,053 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,400 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,365 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,695 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total minimum lease payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39,187 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: imputed interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,876 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Lease obligations</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,311 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reconciliation of operating lease liabilities as shown within the unaudited condensed consolidated balance sheets (in thousands):</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current portion of lease obligations - Operating leases</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,913 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term lease obligations - Operating leases</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,398 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total operating lease liabilities</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,311 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 3660000 5014000 4053000 5400000 5365000 15695000 39187000 8876000 30311000 2913000 27398000 30311000 0 0 Debt<div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Innovatus Loan Agreement</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On February 13, 2024 (the “Closing Date”), we entered into a five-year term loan and security agreement (the “Loan Agreement”) with Innovatus Life Sciences Lending Fund I, LP (“Innovatus”), an affiliate of Innovatus Capital Partners, LLC, for an aggregate principal amount of up to </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$40.0 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and with a maturity date of February 13, 2029 (the “Innovatus Loan”). The Innovatus Loan consists of two tranches, of which the first tranche of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$30.0 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> was funded on February 13, 2024. We will be eligible to draw down the second tranche of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$10.0 million</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> upon achievement of certain milestones including certain pre-specified revenue thresholds and subject to a payment of a facility fee equal to 1.00% of the amount of such term loan. </span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The floating per annum interest rate of the Innovatus Loan is equal to </span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">the sum of (a) the greater of (i) <span style="-sec-ix-hidden:f-578">prime rate</span> published in the Money Rates section of the Wall Street Journal and (ii) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">7.50%</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, plus (b) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">3.25%; provided that, at the election of the Company, up to 2.0% of such rate shall be payable in-kind until the third anniversary of the Closing Date. The Company is required to make monthly interest-only payments through February 1, 2027, with the ability to extend the interest-only period through February 1, 2028 upon the achievement of certain pre-specified financial milestones. Following the interest-only period, the Company is required to make monthly amortizing payments, with the remaining balance of the principal plus accrued and unpaid interest due at maturity. For the first three years of the term, 2.0% of the interest is payable in-kind by increasing the principal balance. Prepayments of the loan, in whole or in part, will be subject to an early prepayment fee which ranges between 3.0% and 1.0% and declines each year until the third anniversary date of the Closing Date, after which no prepayment fee is required. The Company is also required to pay an exit fee upon any payment or prepayment equal to 3.0% of the aggregate principal amount of the tranches funded under the Innovatus Loan.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Innovatus Loan contains customary representations and warranties and covenants, subject to customary carve outs, and includes financial covenants related to liquidity and net product revenue, with the latter beginning with the period ended September 30, 2024. </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Innovatus Loan is secured by perfected first priority liens on the Company's assets, and the Loan Agreement includes a negative pledge by the Company which prohibits the Company from permitting liens to be placed upon the Company's intellectual property in favor of any party other than Innovatus.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In connection with the issuance of the Innovatus Loan, we recorded a debt discount of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$1.3 million</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> and capitalized debt issuance costs of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$0.6 million during the first quarter of 2024</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">. The discount and issuance costs will be amortized over the life of the Innovatus Loan. Interest expense for the Innovatus Loan for the </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">three months ended March 31, 2025 and 2024</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> was </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$0.9 million and $0.5 million</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, respectively, and is inclusive of non-cash amortization of the debt discount, debt issuance costs, payable in-kind interest, and accretion of final payment. The carrying amount of the Innovatus Loan approximates fair value given its recent issuance and the interest rate is based on the current prime rate. The effective interest rate for the Innovatus Loan was </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">13.1%</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> as of </span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">March 31, 2025</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, in connection with entering into the Innovatus Loan, we entered into a Warrant Agreement with Innovatus on February 13, 2024 and issued to Innovatus a warrant to purchase an aggregate of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">424,028</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> shares of the Company’s common stock at an exercise price of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$2.83</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> per share. The warrants may be exercised on a cashless basis, and are immediately exercisable through the 10th anniversary of the issuance date. At the time of issuance, the Company determined the estimated fair value of the warrants of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">$0.9 million</span><span style="background-color:#ffffff;color:#1e1d1d;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> using the Black-Scholes model. As the warrants represent a freestanding equity instrument, the Company recorded the fair value of the warrants in additional paid-in capital during the first quarter of 2024</span><span style="background-color:#ffffff;color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company accounts for the amortization of the debt discount and issuance costs utilizing the effective interest method. Long-term debt consisted of the following at March 31, 2025 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Face value of debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: payment in-kind interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: amortized exit fee</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">166 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt issuance cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(523)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt discount</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,091)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,186 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-bottom:9pt;margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The future principal payments under the Innovatus Loan are as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Years Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,264 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,917 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,653 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total principal payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,834 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: amortized exit fee</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">166 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: uncapitalized payment in-kind interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,200)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt issuance cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(523)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt discount</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,091)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,186 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> P5Y 40000000.0 2 30000000.0 10000000.0 0.0100 0.0750 0.0325 0.020 P3Y 0.020 0.030 0.010 0.030 1300000 600000 900000 500000 0.131 424028 2.83 P10Y 900000 <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company accounts for the amortization of the debt discount and issuance costs utilizing the effective interest method. Long-term debt consisted of the following at March 31, 2025 (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 31, 2025</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Face value of debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: payment in-kind interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">634 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: amortized exit fee</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">166 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt issuance cost</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(523)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt discount</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,091)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,186 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 30000000 634000 166000 523000 1091000 29186000 <div style="margin-bottom:9pt;margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The future principal payments under the Innovatus Loan are as follows (in thousands):</span></div><div><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:81.794%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Years Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2026</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2027</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,264 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2028</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,917 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2029</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,653 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total principal payments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,834 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Add: amortized exit fee</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">166 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: uncapitalized payment in-kind interest</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,200)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt issuance cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(523)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 13pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: unamortized debt discount</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,091)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total long-term debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">29,186 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 0 0 13264000 15917000 2653000 31834000 166000 1200000 523000 1091000 29186000 Segment, Geographical and Other Revenue Information<div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Segment Information</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We manage our business as one reportable segment. The Company's operations are managed and reported to the CODM on a consolidated basis. The CODM uses consolidated income (loss) from operations and net income (loss) to assess financial performance and make resource allocation decisions. These financial measures are used by the CODM to balance short-term financial results with long-term strategic goals, guiding the allocation of budget between product costs, research and development expenses, and general, selling and administrative expenses.</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Significant Customers</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Customers that each accounted for 10% or more of our total revenues were as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Percentage of Total Revenues for the</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer A</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer B</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer C</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer D</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 23.5pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">* Percentage was less than 10%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Customers that each accounted for 10% or more of accounts receivable balances as of the periods presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Percentage of Accounts Receivables as of</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer C</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer E</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer F</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer G</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 23.5pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">* Percentage was less than 10%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Identifiable long-lived assets by location was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,098 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Segment Information</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We manage our business as one reportable segment. The Company's operations are managed and reported to the CODM on a consolidated basis. The CODM uses consolidated income (loss) from operations and net income (loss) to assess financial performance and make resource allocation decisions. These financial measures are used by the CODM to balance short-term financial results with long-term strategic goals, guiding the allocation of budget between product costs, research and development expenses, and general, selling and administrative expenses.</span></div> 1 <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Significant Customers</span></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Customers that each accounted for 10% or more of our total revenues were as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Percentage of Total Revenues for the</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer A</span></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer B</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer C</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer D</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 23.5pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">* Percentage was less than 10%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div><div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Customers that each accounted for 10% or more of accounts receivable balances as of the periods presented as follows:</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Percentage of Accounts Receivables as of</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer C</span></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">39 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer E</span></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer F</span></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer G</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">*</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 23.5pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">* Percentage was less than 10%</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr></table></div> 0.34 0.17 0.10 0.15 0.15 0.35 0.39 0.16 0.36 0.18 0.12 0.10 <div style="margin-top:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Identifiable long-lived assets by location was as follows (in thousands):</span><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:65.274%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.420%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.422%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">March 31, 2025</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">December 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">United States</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43,098 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:3pt"><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000;padding:0 1pt"></td></tr></table></div> 43952000 43098000 <div style="margin-bottom:9pt;text-indent:18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 11, 2025, Kevin Norrett, our Chief Operating Officer, adopted a trading plan intended to satisfy the affirmative defense conditions of Rule 10b5-1(c). The plan provides for the sale of up to 66,602 shares of the Company’s common stock and will terminate on January 30, 2026, subject to early termination for certain specified events set forth in the plan.</span></div> March 11, 2025 Kevin Norrett Chief Operating Officer true 66602 January 30, 2026 false false false

G*M.A\,RQG_Z5$E]=6A#-.GFE5FEJ!AV>S)52B2#J:-1^5C4<3OEZ=P#)8 M=>(A(?;R1S3/"VCU9@.7C>DW4Y!*-N8$)_]">(;Y"VL MWD1SDV@51\W2Z=E5Q\8UXS73E<#>1+!B86L-1JQ%2]B:^782%LR8QSK %5U% M2'F<(X7+M;TK7F[L.?T WT144EUB-6DSJ\7)G=4E"'/3M.D40*E%UUA!?1U@H\1')43\[&-)*$2YU5@*ET+O"@9%CG2 M"_1QM(@8#P/\EX@UI.+U$J3I38I'?4R,P")W(R2::. %R5R'_/055G>Y6-C= M*(4M(K^7H\P)@2TG)4<@)X 53..-A;%5(L024L. MVLP7)4J_GAZ3W3P06<9:I:*T*_^E7>-)BJ>1<(],O:/_0M5K0!-W4:U?_QF8 M_DRZL1%=J);O+6IL&=+UX_W]04YJM.MJBDDGA#&1_FJM>H)BQW,<.$"E_Z'Y M,766Y?[;7 7=*&'6WMI>R9:S[7O:R:S,<-8SL2U,L&E5NXWU+:00A5)(L['>S6,_8;];,9/3"_L_--<%5\LKH/"6]Q'>V_%5? ;M76) &9(>/J8$IR6ZHKQK#!_$?E?K M\EYS[KXWY47LY;C!7]8=\2;J7Y35V%IJ-]DXH:A9=%)O80OC;KO:;B7TJ*3- M/#.NL'B%N/R=N%Z!@2+:=+=9XQ5TK2,;$W:J[$2+-8L M2P;$B43.0;DWYGV?@GV!F'S-Q*)5+%/A-0QC1%DWK"N931B]TZI2^-B-;3LO MFA]XTC='L\/LFT5ND&DSHJ1),![0!4U ; (EA.E15V3HU\/\J)7@0ZHG+ .UF::M8LS1O[A;#2^-Z-C7 =V ;;7[BQ/=\-Z)U+S1O#=?P' M[[V 4("K/VR7 #W^10RX]Q#^^#N2 R8[$F\]R4))2,M4$A(^8Y-"$KIU[!I( M@Y^$Y1G$4X22\T+?S5>D'^0&I1F3I59 $>X$%3EIZBY@_8TGBU41MJI8NA)- MKULFBJD+=.B#"I#&Q#)HJHMFFV$S;2? Z@T:*"+P_0FV7C9M.C3[B@04'!"J M4F 8N(;/L=)\*,DJ<^S-,.+\T1-'(_E&*Z\O6U]M$*? MM[Q$FE6HZZBDP_3%Q0;@A"9_D0GM!VW!\FRJ,>@$\+WP/JT.J#N>+\'R0=B: M "+3Q;>JDHFZ>A;F9L+@[ D][+4#*C:P6 TU5-7.$)!+NU6'C7:BYW!:B[1' M^,4S@40T-XZ[,&/- ['#U();IQR]%>'Q58Q@XB'6L)X@A:B+C[LX24S+9/W2 M=4OS/)-61@R[:'\C8"=(\KP.XV*@L4EG/[AT)G'7ZS!.B%]1R7IY>*@S8!I[4. M@-CH;)V!'5NE:8-=Z;'$/\V;OXT425$F&0%EI 7!4>2\XF!PT_0H64LN?,FK M1CQI:+X6YAL#E,(JDB%35^G[83D^RF:Q@ID1B!:+Q5\OZ;L@'1S+8$4JL?DI M$[#PIRK_>"+H"]H92::FF@["[!3&L-S@3[+]%Z7X%M12G/0 M'1UERC(6T_LFE+ 6M5^Y+/.YV0O=5HG[YO;K4A,.$.(+4P1-QX49\@?3P0], M!5_%-/!7$ C_0#8;V&"764E>Z,A\(T;M+^(Z"4ZV(N]1^Y^/%8!;83L)T<@- MX[LJJ(B,;Y'QS6V><*'26Y<%YIE6([TB.J&'H4(XG#;A]Q0;K6$DX4 5 M=\ZL-$IIZZ)LJ8>W@Z&TXR:06NG+5:695]_%#S8+@H/ M'CN'^Q0D=+=+U%^TF]_,9EM2R?9@LW5.ZF#:ALQ)4^\\$[H$';6WE)++E8ZZ M/-'1L1.^_W_VOK6Y;21)\*\@=-V[\@7$(<"W?:<(M2S/:L]M>2WW=LRG#1 H MBAB# Q??YE9A1<)DH (BB!9$3/=:I(H5&7E^SFS+H6I!] M72OV==5KZ>O:/_6^KF^:&-ROFAB<\-#?TPR;>\K[^F@'IN/A9ZLA]EY!AF^O M(,,75U=H>26S_NL2>GN%[5Y[O"WIZ\Y\$P0L#,3.K ?W6YQJB!U$"Q*;LR)R#3W##S%2P3LB?/7VR8J(OKQ@'#W%?=K0D-1Y*VH/=:PW:U M7(,-,U)[HVKC5M\@;4%N2FZJ_DWUVYLWM=,PX,9E5FR7_=OR2^H9CMSX-G/+ MV47%< )#$?:""8^W7A#*_GRE 9<6@2E4^B5!]QK0\8(Y";O2L$OM!PFTTD## M^DW2G^F/3"5G8V'8F/'AY0#\F-H[F1+6@O9HYY#3B$@F0V[2W__JD!LB4&77 M?>?BNJMV1EKC7?B:IJ431PU#7] \2=R7N2MR5N"MQ]TRTF*[48B0UG24U M];=TF7T5.?4D.4ER.D]RVC+]896<"GI79"BIG^AUC:>E MV\:L/!NV0\GAGO]H++=[2N+_&/ZG)+_*2N;@XKJOZNW5/O.O$XP-4"4E=M6% M7:89S7"L-[/^[GM!IG,NYDS\Q@#3V'?C9Q5%;%BW(B;Q[1SP#1--7H5O(XEO M$M]2?$MQ+8]Y5:5FORVEY@ECU;:1:/O"*DUBU0EC56\?6+51_/7UIHF_+49R M7,("&V7K,5#^JCF_.IM1MZ(A_Q%.NMW3J*R2<'N_Q05TC*X^^?QY/__678J MS ^5#>W-9LPW<1;:W)@S_U7-W\Y$O^L?UI,+MO"UUE,UO=,074^:#PU"K[*N MW%6TZEY<[]P=3F+4&V'491-0:LE;NXI2O2*4>B>QJ6G8M$]DJLUIUI=B[Y31 M:DOW^+VAU>#B>J .-.F+/4FLVM(/?6]8-42LZK97IU WTAU;J<9 M;*DCW;EL60A\0HB5%[KY\9#)J60"SQ[9#X M5IL..>1RL:XQL!*K&H55>ZG*VLRH9*'?::/4@4JRANUF,:KS"=B2K1OZ-,M( MCI\N1R05*\SJMG:'VL6UWE:'[9W-7>EP/#WT>K6Y.\30R,YY6!*ES@BE7FOO M#F7,1.+;/M3(+I>,NDQJ.DFTVDON^V9.U9.9BDG]M9N_@XOK[DC5^H/&-QE^8^>D1,FW-IF' MP,7K*C*1:-A$-*R4(KTO/-R6(CW$8H[V[J6^$@6;B(+[Q,"Z]-E1FPOEX5E, MT9"H6 85#Y3B/]+J+2F6F'CLF#C<2U5 "4S4@2EJ:K=?5V.7QH]#H?=V!@TW M_[\7V?[;3GJ>DY&J'?YT6,::U"K3^AG05"3\?V9$^HUKT73O[\R?969[YYP= ME;E'Y^*Z-U('N_LY*EWB@7S2DOPD^6TEOWW[_E22U9B'=>9):S?.@R^F6E=7)/E MJ&X $FZH=FI+K)54UQ#\DU17QW3I/5'=L"['Z]ZI3CA>XQT(8'=HMFPQ198= MLY!N&593+"\"_3V_YRTKR!>=Y8L((_\6HKD73Y/)S$">&?Z3[5YQ!'X_XGB* MOUUZ%6S",>8!>Q__\2$>:62[Q%;HH0_YY0H&[! E\:\_O-A6.$5&U&IS9B0" M%N+-XNL6?/6WU<_U7FO8+OZJW=(*/U^WE-9N]4:]2DNM_[PS[,I-R4TU=5/] M]N9-;0D<;N9/J[\KT/Q,T "8?R M:%"H!7UD)IN-F:]T-%71V^@RSN@3.X&D MB&5O5CD.!:MA*5 E(3 %8V!K$ZZKG/L\ )=Z414,6ZPOR):@VP Z]$!O*&:7 ML%N&W2?#]I7_-IR(2:"5!AI:L8KA H_#/S+V;&-AN&WX9[SX"M@/ V!R"ES! MZV=*QBU0,/*RIC*F1GN>$,GVDSEV:IZW:H<_'<_;EBX^B$"576JCB^N.J@_/ MHMI%4M.I4Y.HZ9:X*W%7XJ[$78F[9Z'%P)ZD%B.IZ2RI:5@B!Z8R.6F2G"0Y MG2U_&@?NJUEOR>?G\6S__UL[Q M3!Q!+'&%OW^OZ90V= BZ_MUSV4*9&?X/%BH3.&I1$*%B7?VI5\_O5ART:[^O M;KMS<:WUU-%PM5!(CAPX>_0J6^M97A/KRA$7$M_>K!=VMUU?AUF);R> ;S4U MG^FV^U)LGC):'6923[<]D&AURFBUE\[]FP7@L&D"<(N='!>RP$;9>@R4OVK. MK][:8TFNA,.Y+?688&K=0K_5*[&'#W,OL)%VW_L,U&3[F7U %_15IU50W#4V M H8+7%Q?:N_VLNF2<'N_Q0MTC-X^^?QY/U_G1(=FSS"\]68SYINVX2AS8\[\ M7<8ZG+I^5W&$3NW.W-'%=5\=](<-4?6D]= @['IMW[ZNAN-C)49)C-J[MU;3 MFF:L2GP[)+[5Y5;3="X7ZVI:+[&J45BUERESFQE5?2-6)4HU$:4.,^BEJW6; MQ:CJ'%S0="O7GWL^Z#)P[^/UG33D3,]AQ<$S==NX&G8U'JC:L*[&_0WH["C1 MJR[T>KV1V[^XWMEM(C'JC3"J4OOU?:'4EO[K78V"^;OW7Y?H=,P,JC;5<"CD MWLZI(1*M&HA6H[U,4=MLQ(YJ,V(E2C41I;;4I.Z+4^GMAG&J\XG5_M%Z;"G& M$W/-A1(D%R@CMNMI9$NAZ;ZM65T#6E%'PZ8X?*0;L4'8]6IC5MU6[L#L$N&JC:2D3:)7C6:N\.+ZUY?HI1$ MJ?W;NS)F(O%M#VIDITV24>_MW.Q3HE43T6HOB>\;.56GOEH*B5)-1*F]9+V7 MX%1ZPSA5G=%=O=?PSJF/T3CT0L/9):2[0ROE(R>9BEG]=9N_G0[8*5U5Z]85 MFVMT1V^)DOM'R5>;S!TL--DY@UZB88/1L%*.]+[P<%N.=*>W8XZT1,$&H^ ^ M,; V?;;/A?+H+,9L2%0L@XI[2?'?;*T/CF="A43#MT%#>.) +'%X-"RQSG!W MXXW_[T66_[:3GN?@I&J'/QV>L28+QK1^!C0T"?^?F:!^XUHT_/L[\V>9T=\Y M5T=E[C&ZN!YTU&Z[KHCLX279!H^T)#])?EO);]_>G&Z[#F^.)+=F(=YYDELE MM]6>Z&V;UZJKU5/9+TFM(4AWGJ16\[CHJ*Y;E^-U[U0G'*_Q#@2P.S1Z MMI@BRXY@2+<,JRF6%X'^GM_SEA7DB\[R1821?PO1W$LFS7 B^A+-@&N8N9') M,\-_LMTKCM#O1X2W\&OD!+8;&<0D.%5V>OJ5QGD$?,.LFS#^5*^;F?5:^C9N MIJ\? J2WAB6' /UMZ:0U'V-8XA ;P0V 5;Y/F0+<57P7,G/JVO^*X.U1P"PE M])095?XQ)80?3@S;IU_#]]Z$/KKU9G"F!055!Q\"10QO4B:V:[@TS<1V@]"/ MB%'CH@%\,(_@[W!JA(H!*S,;%O(5R_:9&3H+Q?/A)^E_C>'14!L#/M.?HPU <>\):JW>KY*X8 M)O -7'K&%QD;[@_^% +8#B,$6Z"\,&4,I -H0\@PA?W!K?/=7+W \M.%> C7 MQR5M5_SJRJF@<+@-!:_#B5W$QSNY3CE6KWKK4ZW MX1H X(#!%NA[U7(."_!7_.];(A7TI?X)/V;> M9+(U(::=JL*]JLD2>D,VWK^X=KT5_7WE ^!HS/2>7+AMP+N%$H"TMB<@N4$2 M");GP X 5^H%PV:?>($CO,K9!U4O;1NV[76WPW(WY2L>Z@%7R%%!I,RP3[R_ M4&S0+VR?)+>X*)34()"*94\YR8Q;LWO61!]U]9$Y:?>ZHW%O/#:MKM:==(=F MW^@-!__3'5TT4YP/"KG4%P\4FT$K1F2ACB_C0BY7X3?#06)\G#(6!A]9"%@0 M?(A&\R@K> M)0-0R3I=,FYAYXXQ#]C[^(\/\8!=VZ7WTT,?\A I&/=* .)??WBQK7"*KJ]6 MF[N_1(J<>+/XN@5?_6WU\SZ8H8-NX5?MEE;X^;JEM%ZKJQ=_M6ZI]9]WAC5N M2M^XU):TPHI.C@*WL E(Q/RW<9&.MC%I0I&\*KRVOO"T@1";83$4VEL,WM^?2GY_] ,WON>R88N;7E(9]Z**?R^4\GFK.EU6"BK2!JW;M?.6)5 MJ-SHU3ZSLO0M':AX0U*9I+**Z4'KJ&R5FK"[1%W-T/=*2#55GC17UGZR73L MHTYY\CQ+=E7<7<+$ /T[PK-J:D /$W+4P7#G/J.RF4\#4:@L^]P-A:BG]F!P M8F-9RG'0C&])/'^%/WZOZ8=P):7E?.0B+G2_2:-&JEN[BIPOK'+Y7J]7DZ"1 MUHPDKP8=?!_B^#7D1?WB!Z-CLG'>,LDSN^U]YQ 6OJM$&N'NV3/\CL?^WZ[7 M)F<)8'?UU@"#/:LY?TF,Y]>\>B/>W$X?,<: %E&X_A&Q9P31J,A%?Z!8F]99 MTH@R_YSZ*1H\L:NQSXP?5\8$-OO><%Z,18!WF3TBG&\)I%6@4>[ZMH6.CS=( M_-5G]9;EC[B,.[Z\"+,GLJ:?RIK!Q76GM5H7K@ 4'=S#VN/4O.$'?,<-+;UA MM\.+ZW9KM:HVWFV<0KDN5?)0E]6MZ;)&;W596S97-0 MC7B:+U;[S#&32U5<%NZ0*1.O^M4QW/#&M9*%5W-D^BN93$V!Y$:.FH,;R\%- MYLS(G)G321>1.3.[YLS4Y>0]J&OALP%LR4"'0,KM9&J*=#-M3W_?XL==JRI0 MXGM5UU,?S,].OX[I:]*U*VFN00>O1G-;G+LUTUP':*ZGCKK'Y._==T[+884U M,P(V]1P+"WA\[YEJ;V5ZRR:*V3(3K6:*P2R%KJK+@8XGBDU;1J'5C$T8S=95 MK;#X@.V7HC 2DVM(5Z3[TW"%\-GN\RN.GGJV#+5K6;JZ%]?]P;H_!*9,LBT9:1*SXKC M"U"?_((*5*E^9*AB2_?:>JEBT+ZX[JBZWFF(^B%UV7J1:4M3UIJ124-DZG;K M2H)OB"[+\:+3<%Y;G#ZRBS*[6Z#GN"GG34., _WBNC=0.X/5S+":&QB_98BQ M)BWXG+'P38-N YRSWE.USLYSUM\""\]!??X,JO)[Q4@'[@ VS'V&K5SCU%:# MSYRC#\Y,JZXT\F@+/\\,-?J8 3'\[3#\ XCK)@/IM817F>:Z%]==3>T-5FFN M\C!OJ7HW"N.V#=DZ%,;U ./:ZJA3P_AXJ9_OK)_GT^+K%JRGEH%5^?S-YB=O M89"\HMAV@,6V/778WMDI="3FB*0W26]UF5ZOH;7'PIDR M'H^\Y\I. ^; "YY4Y8FYS#<<;N%:,VS?%/I4OY\^0&5O#&C8B"P;;6.@7PN_ MHK\(Y\ED#D+X%Q_UX4T4I%I#3"HQX*V!J*0+9!W=^=;1C8ZSA.P[36;YW:/) M+'?YR2Q5JLFJ=P39/!6OV5 K67.X_;1G ZZ#E"8>KH/GMS6RJK::DY,V&:H= M_G3L!4W;8J%G%:4B(V!X<3WJ[ER]40G\QU9@* GG) EGBZF=)YR*IC4E_;5W M#VGNG:Y.OC'VXW;C3F9>;Z"2+>6$6\3+L VJG%979+\!/EN)&QGWV]@6UU:!9ZWF7M=2H3I%A6I_ZM10IQJ*WMY;H4@S15)5LZAJ M2^';3E1%0TKTWM$8*15B?_L+HC4XOO>J]M@-"?;1BN6;?5+;4^7&-/V(63J]+V?!3-OS$ MEO&"S\TC0 <#15H]#"&8[U.\>Y1(Y]N78U\I#G;$"R3M+5K M>NONM$5-LD;MYKN*SJ'C42)Z?6_"@@"N003@O"@,; OL!N8_8T^D"6.RJ^N]<5SS7@Z2$5ZHCYAG9'L[WF*>+6]6'!O>#7$GAWM MQO38.@=#B-P^9U:M72.7Y:.65ER#Q=2PBO"8$C38N=1&%ETW$'&VL-'=$&>$ M*30]V=OH8 D1WCIO>6WU<2=MZE8[_.DPA7(Z^RH_J*I)C;2+ZYZJ:7NOXFR" M[O[JS9\[E9TPH94S8FH@-/WBNE]'S\IFEDOO/*#[2">!X^W:/6NBC[KZR)RT M>]W1N#<>FU97ZTZZ0[-O](:#_^GA-.@FED<7YT=\\4*F#%M*M0R(CW9@.EX0 M^>QA@F,AF!L0H+XQ:AATZP5A\#@U?/:;$3#KJ[&@^N;5M(A1A],H )I9-Z'X M[&IE/NIC"$]=C7$Q)?N^U9OCE+5F5C=?NN"%^H'R*]( XPK&;1PZ3ELN.DBG M.8DE%1-U[F9SQULPIM!=*[\$&%HV<.KSQ8N]=Y6;NVPX&TCNJXD6^\IMG M^)0M\]'VF1EZ?J 8 M^-Y,"6'/2NC1OU5*P_FW_S74]?:'N\>O7^E/[<,[Y65JFU-XUH1G%;#MX.W8 MJ2":8X\^V@(ZVT-Z'O>KW+B ;X[R.V. 7T\MY3M\@2LJ!F]%P$"&V,ADXTT' M<180$J?A+G!/R0D"9 2\N0& P?1F,\\5IPRG(.^>ILK<6/B>@RGE%F_&';24 M!]BHC_E$<_B79P&T?!;7YC@+!> &MM86OJ4-8LYE6C^#]RE+RC*1&]\WW"=J MP?#;@GXRSG"MFQ>X-NP3SLP(P19OZROM*J<: +*8[ZW(A_.%TY3'=<$L[RYS MJBOZD3@;13K&#% 9NT;\;O >7%]PBADF9 #DF $WN&"&SR\#'N-@S>")C^&1 M%QN@"%B"=P%7Q1]>JR.!*@/KKY9KY*;5Z"OI;PF(*D(QINFON%42' $(G< MIIEU:B!WB\'7N[@>KO:"^S7&.)1#B"6A;UB$+02'%$!%:.?QUAP3VP_"Y$'L MQH&_!G+S\JB'E\)IR !,13W*!B0/%1LHP46\Q2PX_\C!W-\1S!RD"3HB-%O* MUPRTTJP:_+UCSZ@I"C * UC;3WL6S2J/O%\"X?V73ZODO@F"XS40_)WO)Q9) MC]$X,'U[3D_/0$$O:1&T4^AB<*RG@LQ9@3 >>F+8O@),.$K050@! "\NY5J& MGZ'^F,D"_AE1./5\$$P$R2^U<.3L>!64^:E"_4)T+,$[?UL&YA?" M_H<)?1O<)!NN#,,A!A@!A,5@3*5,CM3!F@(@AD* :: MO$%0DAB'LK&E')\R4A45UM#4SIC ,> ^"$!EO7?7"5# A!>PZ +FIE<_JGR( M4=,.T6NWT=I:0=Q-F+PBN$"@ISS66D)N!50/8M%3E/_8>H=T#!12N=8[E.1* M&@9F>;:4&WH7?.5ELGI^^GI]8J%>+JVKYV M'=INK8:B5J\$V)V#^X0["3)&OIEY3=I2S>?N!;)X8J3'VR+M6/#OFC"?EJ*H M3N1F;GK;'JE=+BGL\-\F[A7V-V$TMRU0"P^ ;=XJ:CVCS=>6Z"T\9ZKX\KYX M[C/# @[B:@%%L++?HP_GBQ?^@\%KX^,7W707;WHU.2.Y6(0V*LHQ/.#HXQSQ MD"&'T/#9S+!=Y&!+HKFU5%5FN =2)ST%KQ-^\)\F"^I>4AO^9= M)4)LM]-'C''@.5&X_A$A\-'Q.)H79/RDV6Z/-9$#UN]C7OVAFU0NCYI(!V M9OU146E!63SW/8PF@5WQS-QHI7F;K#>3]6997\B62:3%RO-J]D^OW;^X[M>5 MA7OX'+M]5&R>.Q&=-!UM26>)HU;MH<(5F\UJ.KS1(D"5SY1MN MEZ>$(4B4?EVS=QN0G"VQI'QWZ?)8,KJX'IY;E]33:Q=]'H5P6]M%KT/[2IGX M/:V-\>!^;^=,?%E-V4@DVM)7NB8DPO;3JMZI:_9%0[3-TI65A^.Q%)26PV=E M9=>.+:5KX@,Z=3@9C(ZAK$N64$I">_LNTS416@=;OFB#G9VH)UH_62&.=; 2 MRE=FK!2G[']C8%+9F#Y&*1PWKK7TR1^ LL$-EC79X:*X!7-/.\X6S-]SO95Y MRL@O4B5B^:Y2,AQ_QN'X5X:7*EIL/?2S=WI'$:V7F2^2U/9" M:F\3TNHCJ?6TO<\$J-$Y!B>'3:>^:A MNE8;#Y6J:R,QZ)4Y2*N8@C/LFS)%Z>154VS!(Y7+TLVJ=D!K'"+?KLM!+!7( M9F%);W'=F-E',M%:YG_*_,^W3[36>S+16A+:>1/:FR1:ZWV9:%TN-/KZ M#.S7Z93U[ZY$SO8QI$-O:-D:NSMH;<*6C3';6,SG7(C\7H1)(I=G!AUKPB-SJ&@D:S$'Z(YG]^G MAKL!0L.+ZUYKU0VT$4"Y;(2T4_TAZ'1KKTWLVPQ@@+\,@DDRNB33&C@>#P/T M/2K5!+CDB*[A\8WH&E4=T447,/4OJ*50O>I3>G*(=6K#"^ZB?S33N@ 1X/2_FY.V/:P478 M)TZL)9NKKTKG+@@OWDT?GMAE',7*2 %"0CZ-X6.4SF7BAH&R^]>#32IN$=P;KI'4O M"^()'G^*<]SP8\3?TPBE(A@"H^JTVJL.BNU:R;H3CQI^8G3?MT:KKMET!M0R MVKS8X9046M,(IMB-$^P6*Z@^Y*E8::,)3U]8^%6L^\GW9FOH8T6YZG3Q, 5# MA+)#"RIMH1%O,@_NALXEJBA%'P$&@7+S!%*&D+J19]HV^!'G M]X',TTCF36R<#F:( MBZU9(,[MP($ER) C (=!_A-GL6;B(Z;8P:ZH=Q4?:\-GV\%F^7@AYL_L4)@6 M 0.E/#LL1\7BXPGS_=@>4P'QQV%<7VQS.Q7Y4@A_)>/@D%H0@>$SI"V>Z+S^_@<$)P&"8!B8S\R? #N0!5S-3, GH/==94>E<9D$HC% MK)4-0&SAM%$<]"-^#(!)L0J M'A/(?DO>>Q._L\HXN@QKZ6/Q7+N W*M+3N4)WE[2UG&;2H(I")RG.+G*MS, M4#XBB.UQ1"!(:#E)2;K[>)-.)D64_VJC"'D$O'#@W_]FS.8?E%LODP9ZFV)Y M%F'A"Q6G+."4+/;3=** KNJ)K@GN$#^WP-[Q61CS=/@TB.#1D$B>;AK.8;$0 M<=XMGJJ*GH-Z@.],J-W:TL_8R-TP-79X7UAE<7).^?863_Y;MK'AJ'=_P ME!0ODX,\'F3W\4:, MQAP&*G7PY)_QN'%\8S_H"C51O@E<%,='N40\RU4]): MRA_)M"Z\V" #$16QAAQIJVP.?R)6!;P "?,#=!=28P/LH( 3%V70R.&D4JS(^_@ M0C,W7>S^.K@E_9 ,ANYF+&/.?[@_;]/VWVJ7=4^,W&34PI;IJV!K-F7&&AD5 MSE+<.CI1>"!0%! WG^?D/N>9%:8H=I>U;CF:;,MHLMX2O(YY-%D=#LLF\"/2 MZ3+,**_6@2H&JCL?O_R3O (H?O/)#O]Z MPE:Z5J($MDCJ!?0P*7:)5LB?*58,^7?5=$#4\A(]<)T:2))H=YUJL#D,E5&K M<.Z\;8EF2]^8R8!-6 _N=S"O OZJJ@I6MWUQ/>CM2<$JOFPU_CP!83,U+3(R MEXDA-B_]K.48%-KOL5D82P_:#IW90;XFHGTG5PE66>=LG^;O.H38^MGRO>Z&GE)BX?* ]<+ M8M+.^@;Q\G."FP1U"JQB'#NLN@2&,4>8JGI39^N8ZE=H3MM# %TL,6BKW>[6 M6>JO4Z/6\0$#L#6G7MF^I?PK,GR@&GP;!R(N2UX6SN[(A?QZ[W%GR[#Q76WLPG;^11G M/'=NH#J)P*U6KMJD@=)XI!")3>N=>N)TGH35(E-F1[=_FKV M1;=?D.F1+D]HG'O!JS(_^%L*WGV\F1^?&08X$#P>IG6!JLDY"YQZ+>]N"*?& MWK(83T:=:VH$>'<[=5N!$S'_3].=BNEE',8-"BAD0Q<@VNUN7.J8V MNX6IX*/*!6?-[MHI.]IN:O!:N;3BN"Z_;)_;UX.AB4V5!#?0=RZZK0*9"WFR>,"%]>7VKLE(TB.JY;CJJO6 MX2:TD*C654L#N]0C3^_6-3GO- =92]HZ0=K:4GI; VV-D+;:G=5Z@J;15O6: MV]?UCSK&Y_,%M2NNRLUNL,%6AU?=A )&> F?T#JM16\-2VHMM6YZ6,J-I>3] M6!LJ VQ;PP<]-JU,IZ=MJ(5QC!6W?C/XB49);I*#.I8?%)# MO=49C.IS_VSV/1V7)V.M_WN-W;7L+'U?PL _*ILZM2R)]()]V->EFT0=5(V* MB\:2[4N-;DK"181=EV2XILV03W,C?RZ2IGYWCVGH(3)P* ,##8H M,+C/R$5%G?J6*N8-4'@.E-9*N\@G+NQY)Q4A]+XX2G*>$3\94CW&D.IQ*,JI M\4MM/":4TD3U,EJ&5[V/C(BHQ: M2OHZ7-3RU?1%-+8GS_*J/PK"*6OX QX+T^SO'WU[+).20 MKC7,J;^+HU=.\-P[^7V,V!=8\?L+0R)K(F^4*!]?_$JD]7HXKJKMGMU>:ZDV*I 5D,IMHZ"K# !HRIA M]=LHK[H%;:2DO-H[88VDO#H&POKD196-,&Q@U%,[_:9,S#X?@?5]RGQ&D0PI MMMZ:NJ@UV4;2^N[]QKX:MG6#%_1JXL(&B#VU/]J9NIHEM1I,5#@G49G9+O7, MY<4B<\$E#RG$=G.TGB0-5I5PE8FO_V%S*Q&M^K]BS>13R MUF\@_=+.*5+T-8KL_LA$V.]^FO#3*A. ,C38O;@>JL/!Z@Q *?_V1&5+C08; M$U$\ZW#BF<82UW"7RERD!Y*\K7:TU2F%C&@TEE\"1CX=JLL8,TPSL$Q&\CW\?N MMG//CT&^VN7V2GG84KVQ;WET!E)'RI:,;!%H65G$X*A*=:2=6-RNT8C^V7.? MKJB3Q]X8A[04]T=I7T#@OI+8!D!L [4SVKE^JEEF(<>,44R@V@JS,,J5T?V MUO55?XH)FWS*2A#-Y\Z"#XEB_C.-5/%]PWUB?.R.,()=)#('L"3R QHE.(X" M6#D(6LJC6"'[%!92Y<>U\.Z0-&-1@2-$$R"ZR.?S6_@>8*5X _$\IJ*%<#<6 M>V:.-X^'J*3KH=BB46T!E7/!VB90EV$CD,&(QR'RV9E"?!Y44/S:(!K_$T>B M 9#BHC$^PW-EJB;.RPV MF8LO(\CNBK?*)"Z(U\0"6,L(65+N1O-#LX.LQ1L8??OB^3_6S_KJJ?2C2427 M%(=-XX!I,K44I\3QS@W>0!7CF6+X=_"!X9 $V M7BA1H"( :"^&T\RY=!69RV?V!!#ZRF<+ MA.@KD@'8P9X,*SYSSSP4<.G9.+ MV82E@'2Q7<-?%#"5+";9+B*P++$\D6\;EROL$)'-$UD0Z2F:T!\ OF*C;-E85-C:F66B2,P$KW;?%A;(RFFRYMW(ZG$%LX6RI4 M9HR%"B#:E/R=MK@S>B,-%:1AM.)EP.E@,5OLFU;!P<0XA!:.3"]"=)@:SRQ_ MHI;R=V**N5T@U\4=()1];+\%9[5I6N^"OH/7.@![JPKM-Y9,\$#"3(8[PV,; MP$01/W&Z,TX@CL$X9[R&%(VP)^'&]@6"IK F$LN2!]T&[-3@F [P=VR0FWCU MD6/Q.\EP][FKGV!#3O?#BT26@K"O1W..+M3&LCA?#^@2&(@O ->S\A2 J/]LTG[:E MW+M\9'KZ&!##N07E= $?T?S60O_Z MQI[P_5'%#D[=SB&V.6B7;%UO\-<%=,'Q_.3LY,8UUXT_1VJ(24P7?76F",**E]!/7(9*GJ?/]^J0I3!?F%73_C0'"QMTYZC M?9&H2]$&!&@OK/!A32>WH%8^Q+\:$3X;)XIS8E?'U@\[%=;==T%@^'E]? M!)6#TQ@A(Z&5D;;?L@1.+%/?*(>C>?838Q97I)=8$_I-;!R=#8NNO9\03!!S MRK;<448UI(*>_ U]H:$"#Y/O?*U@E6[=:);0[:H^" I"^+*J$"IB;T +< +N M$R:SR_;!O!!?TN&.!_/[]6$^I6H>'>:_8#NXB'K!>P62)O6P@4W&0 6VT4X# M[F;YQHMBH8V'*!!@$J)UI#@PJ \'^J"D'Q\.D#_$,*?H/5N.ZL#[P/[V7!9D M7-;QEV#(705S@-W$!OSQX7%0*0$AP+Z;>HX5B.!7$ODPLG$C0YD8IG#@,$"N M?Z$/&^5FM5DI6G=8."VE@"]^$N_[Q#:-1AD,X!);!>7VO\:ND%32D],FT6E: MRJDHG2B])G D2I,!LYWZ3\Z2VB4:X1-#8TG*V4'F*E^![AK3+,W:X]F(7\%A M8/N7QCLZ BASZ"6FC^QW2FZ_*"^O[)]74]N"ZWJ/"#*\N,:0+*X)W[UIP$,]3'T,1#QGU[DNZ@^ JE@"AVU0B5KZ:@GXKQ^XIQNU#O21JYAS@(3! MG#RAB)FC:FQ2U8.>!:(AQDTL?+]W_Q^PYL(#:1?7>H%X_S61!<08@ZG!%2:0 M=N37!L[_ Y9,PWW<]XY M34@C;JENT5(^44MB//FZ]ZM9C-@(#9#/?FC_1;)+@")SXK3Y:%S7(D"?FO)$ MR#R8P4/3D4NS@A+Y9X&:0\%';BOB]OV,+536U;(1$1>\Z75)M\M01\F&02(Q M=W#)\1*GS,!ZZN'IJ+.!CK+W3]&A)2(:([J;&!^*L26].'&C+>6KSQ(J2)() M#!?S+L!R]; W-N:'44!:30RG=@-P'/85C7[K5D1-1DW M>U?4BEUS**D"Q8Q (,T0Y>"B>9@RDS/U0LF*H9T$^\'@-4BZ9',IDR5,PW\& MM(WP!SQ;"PUHA'0B I,ELF%4QP:DM/@( $MQP4@ ;B0& ?J)(,HA_9CTQ?%E6X^ \!FYB M:H]M4J[2[VA<%^QL9H>\LH3V E>)2J!CF$A6\Y6MK4R;&L^?'.2P\08-G M0X&R[*;@.1F*O"<*=(7NGV!P-CUGE1]1C"O)I#. I8[#=,CP4;D@>WH5%^0? MKE!PF15/^RWP10[)C;5:U;F+*W+OB" R@"CTAN?CEYK@@>G%X9.3N=KL9>(M MBZ/>\>R:HGL=7ERW6ZMM9>)[!=O$CQ5CSB%!3_&%=RL[:;%1%\^ULX1Z25KF M;SW6T1-P*2 Z?9$%-UG#(S"S3E@2(E\I219<$C+QQX?$+&Z_\8$80FXG\WFI M9H'@TM@[I%C2$5%F9S-EQI@C2!&ILX@<1TB.H_7DB%=6<6/=.C8V:N/&5GUO MC>;_*@AT]!2A&N8LA-8L(D\!JF9 Y7S(53"-.8&1=1CFE "U2'RH*PZ%V-G M7X=NGZ1("15U)[;_.(\R1;+EDA6UQ$Z,.>AS/T6Y4B8O^0D.@:41J.^;I'_& MFS.67&_R2)/_!=\:1VA%#^^37<;AVE'ES]K^RP>&T MXBX&V&8OQD@#+:K36JVE;68, OO[K%&/#GZU!35XC83AR5A5-Q8O;L(" G)\ M+MM8E"#(2]# 5%UC82UE$?[)72 9"WHI':\HBR31Y[A_(_VQ$;M4R/\6 8(8 M5,.5<5L=6-M?RY""J>%C:M4R0\IE%+67&=*M8P3!PT1 \<'_AJ^*\[4>>3JD MS8);N#-F_;80OPO$#TO.NDE3N4;ZQ757[ZHT(6(EO[^!Q*=PL"[%_S"M3AM\ MP,JN&:C'L%O/_($!&'+7 @.W _)OF@='EXV:'HB:1SS>%J312R'-G3CW5SQV M\F6"*5H1-E#89;CJ$V@F*F#>":$#5W$$IPCB^MOXXDDW,F@:JH,5LF.,40M= M#NLY9S-F87XO5A+Q1TC[BZ.99/1MC-?A[61<](6W(?YK;;AN05/BXGO (>KM MY1 =9I^NQH,3_= B7>\F3"O?X1?QM_G8J,4PS < Y1IE4C^U5" 79H':9+K9 M/.F^M_UV/L&YJ3BJR$[J;3;@FDD;41+\_,V!S5P]FAC4!-KP+.90UX/<[2;! M#,RZ \$=A 9/D\?P%_F<8QTYCTF)>W6UO#*W/I9()MJ&@K'R*^H(P7/H]^&1 MVCM&+JF!E8I\X#:8%3G EO,&2+!:[S,J,\.Z8<7=V4 JF,MH!@>)I;G5*B]R M[D6A[?"$C;#8F)VQ<.I9+27MG$=KBI1ZE '\39,DC02T@P*+8VWSTEC7E].O MMS^Q_^G7]?1W:LCTZ.T%A>W$/E:63>.SZ:J+B?6I=+&HO%%VXY/=^ [4C6]] MU4>U=GRC ;7C:^\^ON^MVO&]V0"R@Z+*C66]3Q*[EB,!LN/N0<:2Y6E.#$#B M6:2QZ[Z(PH87U_W.N4YS/CP1I0'Y.'-2SLQL /G*5F1[^@7USK.TJUKD&<=5_=JKK5Y M@('LO[BE_^)P??_%!K=2?&7H\G=>W&RSX&&2I:#OO"YY*9#9;W=6 IGK.Q 6 M]QIL?%?K[^G$@$RQ>%QGO*YPDM)0L,T2Q2;7ST^4(<@FA2 /JC>,2D4,_X&5 M_LH=S^3XR$Q1X*FI)32UUT9:7VM?5AXA7\;X/-RTZ940[2'CDZ>N]%8^_UEJ MMJF\3IHT@.3^&LNI;]3VQ,(\XT\VJKG_H)3$+5W",XIP]^*:\G#U#_N.9!YC M,/.@K*@O7<5'0('W[A=8]OL+58AOUYMY'>DGN:#4MA ^I*/@L)0 MJ'U_\2I[>;!Q:T?5^SNG$33+QWPCBRB5/G MLLWV9#E$8_+H"HCIC^Q=K2F.J";/-,JITPM*DTX^;?7PA%=[YO?Y"J^#9GYK M^JZ9WU)V-2#M6XJK1J9]:YW=T[Z;):*:2U:UY7SOGN,B<[[W!)IFLZ*&Y'QK MW;IROFN\NAISOO,YWLM9X!4FR0^22?(-ZEFT:5R[7G5<^R-[0DGVCREQU^&QU=+M84U7^SKPGWYA/\>ZH*](##7GX)N9HWKL<;:D)6?5) M[_S=5=._E\[[%9#17/!_%IRXFWZRGB)VEIO7].^!@M-1XE$\?GQ>/IV-/\Q[RU+WNH>/OXNFD/!S9*?4 M_9 :0XIE\1=1P(+\+VS7]&9,N00*#][QH2[9UXIA//E?85?<($!PIU-]<$8- M B/NZTW3Z7P6P.W@)PX0$:=4A'6 B].V<#I!.AR/&!+#( M>H+#QB/.X@E$HHSQ%C^QU'!OF>.]JHHE>)C<>BX6#?%+!,2U@Q^_+?"?GP#W/+^ MJ0U/@JF!)F!/0++ G=S21"KF!T?&UI)]TY!0/BI.]!O$9J:>KVCM7W$J&UB9 MU#4,N5](5HP8E 4$P'+%-TFUS5&4V/1[+7U08V%,\5>G4*U3Z*\9-:T38+FR MGG0B >(TM\J_Q?@LVFQ6:0]XBC"B-#2%9U%C!51V5$YML,GX."J4*C0;<&4+ ME\H<^)R UJV"52?1D#.6OLK-6GPI$4[:K6CMB%Q4ZP;4##:W]L]JIZB5ILR_ M:*1Z7\,4I+J2U/=7@'68N_EU%V]U+1QOYZ:=S0;P_]Z-"1YA'YR$"?[V*B9X MO%'!RGQN6"N?TS$MK!'5 L?$RLXWB%T974?UHJN6G>AR[NAZ5MKQ[2[:\1E0 M6K]=+Z7I6$K6A'3A)E":S VL'5VU>M&U(]'U3"V&CW6H<$=!8_];*JO[Y4EZ MO3RI>W'=V9DGG:VRNN'@>J?5.TB&YW!KE'@-Y2J98!,.!:<)FN$4MJ:U]V># M'N+Y@ERXTPN )]/X<+J\_4PQ;I$G$HC9X)CI,8?M>%:@B*&0F$8C(^0G&B%_ M'84=:5@X'SJ_B:GA6T(-@@IJE0!G$P;=,*%01I&W@R_;H54Y[Y"R=)IMT?@[ M]6K\/=#X5T=E9.LSL99M],:;UZ*0VG MT]8UV>3H*4UZ+FM'UWZ]Z#KD0U@DNIZ=Q?"I#A7N*&CL==$4J:R6YDGU9N3J M.$17E\KJ&2JK?Y<17JDGU<.3ZLV>[;1E.J*,\,H(;SU%Y ^3.S>TP\6?ML72 M_A\/;MJ^X\9G1H =9S[;S\RZ"0(6!O?NO0M[L*W(<#YY/MR)>XO1*-]FP6\+ M_F=!2XW.2KN0YH>I[W$#]L2F@#$U&W 0#M07(0RP;T'26 QPR-D*WT_=]V4-G&[IP:U6G]T>96=5] MNX]\'_NED\"LVJZNHU]<=SOJJ%>7%V)_#>G>KH.D)*[S(*Y!>\_$U2'B:H]V M#COLG;B$W(UW(&#:(;/@C6VSS"&7NUT>VFRLLK42%N5J/\V,N2:NH*NW!FB) MS+W QM^\]YE#O<]2 ^37O)TGS)=V^H@Q!DR)PO6/%)F&6?WQ0+:AEDX?X_#+ M_+-\IU&@\OBAJ9^JS$_L:@RF]X\K8P(G?&\X+\8BP(O+P@6 LG0/54"X:EU? M_Y^Q_[?KHE,5+Z7IG +?U*8=C5K#7J>J20L/#:N9H>M6&@Y:HRT6;4GCL4%M MLXN-H?OO=[]S4:"W*MB#C3_7[S=?;OY^]_O=E^___JA\O'^\_>/Q\?[ABW+S MY2/\_^;S/Q[O'Y6'3\JG^R\W7V[O;SXKMP]?/MY_CW_S[>[QC\_?Z2 7CZN&8IF2#"2A)K1:+&9QV%"4.[2PPR5O3(J],/\]H)$$48 =/GGG2]=P M%H$=Q+T*TWZ=($(L8O2BH2GOWHD_2_N/!E,O_00J%B<)K7WU7\G:F7V5V$U^ M![R-:CG05@.KZ*BG+)CA*XQ:R<7^#7Z&V,F10@'.CM=WXX+0=Y;.K<"1_U_Y M155RA]H._""YP<>[6UJ-C7T [D(PEP%W.2F7^!,-X/1.+,5>"NZ*X9MJ1U\5N WR,CK!-;T^[BRB+X7 RY M5.Y^FE/#?6+*C1GBU]JHPT\+^CD!)'N0[(^SY\">N)G-B!M0E7$44F-<0!+% ML6-I_]XHH.(4:HVL!!&6= 4Q&&;&0A7'CS]Z ML1UG^3-^RN5/Q\RQ8;_+'QOP?IQ3&:Y\@_.]7&OY4Q.YS/*'G/>L[",(P6S* M+ Q8GZS"&Z$G7R$X [@I!PGB)U:>4>-C?.39\&U^92WE$0&R 1T1LD$T_B>< M'^_!MX,?<(/ !$%L BH3YN&K/&JE/J$>OZ)\C@ZFF 9> 'P>9=HDQQP*CB,0 M7*RG8-]-^ &\RK(G$U@2SPO;=8"NJ$'T) HCGR4KB:/!=CC>37.MD,Z]7$C;/ERV]Z@H7Y6VC5Z4,;_'-FW=OP(X*0@E6Y-6/ MM(EGF[UD*R11-FT]=KI:2_D3&49,:/P2 4T#]J^(NF(_)V(MQU* WN-;3C8! M-\QY84OY#^\%?NVKRLL4)(3RPN@!Y@CDC^86?QEU#M] ,^AFF#%E[MDTW8]. MR/%6Q46GQC/BC"(<)33WSXW[@%L>K>8!9IML'L8]UD$9PY_Z<$#;YRANS '; M31X$-%Y:RC^\2.@L*A?CL$5X(2(GL-(%0G'[UH/THF)&GKTKPUWPN\H 6^RP MZA6N;8Y=P0ZL8-%V-LS.$)9>@\9G_!:+S ? 1[R ;:W$#WF$M4,2D#<:B@/: M,^+2W/>>03S[B"3,_6N!HQ],A=PLB6+()A.@:<0JDE]@EQ%^(SH;>JU[ZJV@ 70$YY_[-@M!Q51N/8O=/7L. M[!GDA \,!I7]9P$+)63FU(6=/2U09PI11^(B,3 ]8E""JX$"YDY1>^)@,+W9 MC/FH6<'.@/#A-ZHRA5U<914M@GU.;)L.C53 BX%-ALQ&S> N_AD*.)RE3C+8 M,Y%KX76.;=P@S5*9>< BL?V_8J(RBA^A">',O"#$,0?X6W/*9O0-&%,FOW#! MM0,2_(X]821OD$.[:'4!&S+M #D7Q .= KFIP/>826/$)C;S]0.'10K(-Y4Z.=(D-0W#U0O]C-/J(;I>YC\].(I/^! M?.L&YNZ\Y^8XTB-!!$=6B!$"5WR&!4F?.=S7S"#L,4)A;Z;35A 38!6.IU>W M] M$B@?'?O+*8\+%Z6?';PM>^A3_MHV_E#@JD8_S!7/ M?EN.0!A %+# Q35H=MVA_J&1#$^YC$W-VP<)_#<&?FS2+Q%J+$M4P6?L@ @7 MV"':3UFI''J>(_@H4+Z)%E: 4B< &/#!/\P5FJ?_Q*XHC)=Y&7&3;U]N^$AK M83@E& %?V,D.LQRCI=R[RG]&P/+TMMXA71F9*UJ;%I<6+]RL$L8N6E;/8!2+ M*=J)$9D=D /;?_*-&>P>S@G*$@ []B>1@$3NDN-:"8-)!B/=!"1$$N4VG>H# M2WHH\?XB+@8 XG F[]4+$UR1K$)4D&W:Y[+XT:P)O+PAD=9GX' 5 MD*7P[_B7KN<"@L%R*#Q!6[()S/SWJC!3<3_P4^"JWHQ6HZE*/T,EYK/P57*[Y/0T'!M M+MB%*.=&I="VS45,Z3ASRGY&Q8&_P/:764C,#;CN-4/M+E;_EFCY 4X>N3:@ M5G(6KE7DM(E8!4,U%<"SL)EC<>1%10%./$<'YP+U ]@55$YT^1&30_,C$W*8%*FD^$U,57&P9,@UM*$]+;SZGPXA7,^ M3;G2G57J-F@9Z%/$W[.,,3GW2-^@C6#B.K&8F.$H@0'<;0S$/+$Q&H*<#MW M0)=%C%J8&#&/(.[!U9:$W/.;2XF?E(TOR(:S MC-GND%>/[YOSUEB!PE?X]IC;-; 46'=6HE %-MQ6D4;%=8$TTE7FV@@NG MG@C$+/P:#N5DC\*=?Q1'C!=4%1YK!_.4*1D##.47NOJY-UW\^B^.KF@<(@Q= M*^#^_3$H5JXKPCX8+B&=+P$U B8+Q01E" ;BO'S'(8[2%=\6O! 7CD%M!5E0X[,!B]5ID]B"':(%[STQ'A$!&YT+ M.M3PA#_ (H@WXA5:5SPRF'N$YX:36;:(EPK7"G^ Y4 )"0ND?E@/V^,>B?& M3J?\>+2SY(CTFYD!5TZPC(D>MH>Q.-_@.(5QOZD7P/]!+['2:1%J6C2TA M+1H3PMX!*&&ADLT]9X9BBD+51!]#>PF=5OS:3$)A'.H91#9/3T+."PSGR@2^ MSAU%:"&@F@$TB-%G.CL//^(^LA96D>'Y5D+GR?,LT#;'<(.AYX,F2SF:)FND M,9S0[M\_?XTI]PJNT8J9!MZ"F;3^%,9A'H= D47/==:P#- Q;_*1MB&>'Q ( M9*^3>*0S\2E2RLB\(DL2--5@:L\YE1@Y&_J0MQH?)'=,D0B2=??Y3V!-"+LU MANWMQ]\?$K;82#0(N8ZT2O8)H:]Z0/(.D"5.<' "7+;,. V"T=I(^ M$.234 M_O[[U^:"1CLH:-XU$C Y-LW5GF@X V.5TFHX#W$.?;"&&YLUOGN&3_?&18O.8)T:ZF@MO!P,=\WI>=?YU.2S- M@=HZ4B<8_9F/Q[ L+!!:MU.,K(,A^7UT<>;!M F(Z#:;2P!J\/UX=\A;=.*NH?55+1MS0?^R')QSX^@9// M_Q=U/E-L;T$H,^,]Z,F9Y%$(8DM^?B;]K3A3?75\0ZZ/AAJGZLV3SB_'UENC MVV]I6WI/E&YCH;7ZVJAIO37JW%2O4T_-5F,AI7?V5$CVEITU2A8_%Q<5)\TW#Z%J0Z%7=J.7F&K.Y.CND M:IW&D$VQ:O*59Q7&J9>[M,,]M2Y214=L=J^HOMKNC0[0U[B>OD42UXX)UT9J MKZ=)7&O,?9PRKEUVU.Y(?W>$>+:#_M!PU]QE9_!N+U;&<>A-WUC R&>WU,5@ MG2*5 .0TQ\YH:G?8/<"4EYIMB=.\G(':TW5Y.SFR>I MB;)MV-Y5MFV7Z8T3:=^IF8"07RMMW$N1X6I7V*W:0&T/Y+V>W+U>CM1>IUW97#R:*ST]6[+7WX\MV=Q^PK=4S\[[)<6] M#C [W@UV#&$=.M8BGS_G3E<= M]GKRZJND=Z>EOU)UTN]+3O^KI/SWT]#; M4?NC$[BTT\W8N>^V>--L:=2,5K;:XR-GU7+8>..?XJ],JG]D4_#)'=94G9X5? M=LXPV>XS-L;F77!6F_W4F7)WE-2KM]7NL%]?!D^C+(VSNTU-4X?#"BG.\C:; M?)M#M3K-SJ\0:5*[*;6"DZ32O9M1^ MI== 7LW^=92>K,%JV(WL7%]\A&9A(KO2\;_"_ZHJ+GM=SM$1!Y5&W>.N^C_1 M:^EIU6US>2W[#_CIQWTM)V=]#3OG9WV18W/,)CCXEAM@2FC\W%/X\%A]*'I; M[0\&]04HFA:C.,<[U32U.ZJ0 R/OM/EW.E*U88UQQ*9=Z; Y$M7"4[Y!B2]23:GCS:@KE?J>1%HFVS+O!,T18]&A7Z M:QP#UIZ=.R/>AOAMAV9]%@.B++S2^X75%,N+<"QF[H*WK'"V+RKN]_4WFA%: M,+=5W%E7;PUP9.C<"VB>]GN?.51RG4X*Q2FAF0?%G-%V^H@Q!CJ,PO6/B FE M"(-1$:X?:$*LKN6GVF;_.?53N#ZQJ['/C!]7Q@0V^]YP7HQ%@!#.'A'.MP32 M*M H-W*X4<-W:<52@[/U[%BLXQLD_!#Y23-B!4<"VP$.]UUM+D>Y,OZ6?OPX MUIZ/)PF)I MGE1\<32\.3 <1G^,;<\T (,7^$6$(Y]I8C-38$O1Q###R&?TP,QP'&7F.&R2*2T_ H<(<9LVS#MQF.>W;_6N A@PBQ(5"LX-N7&P78 MGA&PC2^S\7?QRS(+Q8.FQ5>&C_MWO*<%QS7;>'*] /8""_H_6 A/XN>WGL5^ M%MW.6B_5SM?6QRLH<6\K,@=YXE6G53##>@Q PP4(W[I#_8#X=G&=Q1L%WL\< M7JO\PPZ#];/E)5'O3-3;AIU@U,F)+-@$""6>K!@R<^H**@'=.^ WQ7["[P+[ MV0X7RH0AD25\&[;[# \'XG,X&0M"SP5R-Q8T_AU^ZRT,)R0B]^:A/;/_HKHY M6CDP?<9-T7:3NN9H4E,"2F5/_IJ9TT>2 M)RN1^%R0^#7#K$\=B9N$P3*FORFF7W$Z]JG%](]"C2S)B&J8JGV$)0Q[&:;= MP*3LLECPFFG:#(+5Y ML/9)*.AO;V(V0D.O(#(J#Q _!C5=XN[IX^ZKIJ1+Y&W8+9XI\E8=!7\,>'N$ M]0ZEKVO=(/BE]'E9\G!$)0_-3[D+%W,D 6>A3)S(#",C9 KF%2K_B@P?B 2^ M&!N!'2A6Q)30HVS@9\.WC;'M8"JC[2I>Y"MF%, )F1_\>R:W&%,2 W/*+$PJ M)@<7/HW9B_"%-\D_B/F?VN"#8L)F*;DYA)F#(UGIGB MP"(AY3/#'ET+3.:6<@,[P)3+R EI&7)]LB[L-YS:OG4U![@LLN_PTSQITYO!64S8.!S<<-@2,&B- M9$])1C;"@6=V9])\[4!5[FX?:!/;TJ^#9,EQ%,!=!\%1YH'^R2AA%G,\(]^< M8M(ZT36'K\4<&SBV3241^ < %&[+]JQXFH0+-VHLX"X1";0N@(TRR>A+A+LE MD/ME:IM3^H265P"[YXYA,JNE_(?W I3AJR#W9BS&T>7=F ":,4.KUL8;A+V9 MB"^. _\Q7G!$$&BMO-B8P8I9JX"EX:*EW&)5@,6W#[\,,(/8@E_["V7N8YJ_ M*6@%WXP-4.'$L#CAK.4IKA?"NQT;=LFIB0QLV&CRQN7=PMN#$!;$%UZBM 0$ M>H>%),\VIBW/F(&YPY,(RPD(]2FQ.)P:87I0>)^%D .XSGUFV6:(%0D1HCD5 M-N#]3"(B.'$E1XA^>5\%X)OI,R/@=_H+B'%,S'9L#H5?!IG_%D45(:4O"J1C M^?1%!;/4D#T ]X#/!2,-C%D,,%P$D[)41*=>_]<:X;>_JHN2@%TNC,E#MK,$ MV7Y+VQ-DY[X-P(/SQ<+, 6KWT]J<9;Y<4"DS]@UZ_5(ACBC+JA/K#WYK6RL? M\M?8;[5SUZCMC4!6KC'W;GZG\1ZY8 !.RJLSD <:3[ +.@CR9H 4:"C*(_M7 M!&P6OW_$RE*<2:2"ZF&V%+(5N*KAX28^L;$/NM&"=D/ ^:7=ZF]ZO\.>#'.A M4!D":*JB!K8,Q??ZS/2>7+B@^*@]K(4H 9&6\IWD"+P72T; IB%]SIM, M A;BW1RR<"D'FRE\L0P<]M,.:-CB.O T4Y+0BN5K46\]T=C\(1DN>;<\7+)) MQ]LL* $/>8T.*3&\]&:*%3N(H<8,F!:O>B0%'T^^6KFJKB];3;J^4W'3]E'= M\0,IL4>N$5ED'Y@>0BO@?Y$OP\"/02$*!?'A-I,Q9(DB'RN6<]REBX_(8J3C M*[&1Q4BR&$D6(\EBI#I -%SQX\IRI'K!=F8%264A(TN2JL/LA(J2RL:/;HOU M;%F==*Z%';HZZ%3-U3SUP@Z)Q$>&Q%UUV.M)))9(?,Q(?*FKFEYCY]&&(/#9 M%BIUNZ=4J%3VV.OB06=7H:2KHZXL@FGL]6BJWNW+ZVGJ]:C]T0GQ0AW[<'EW<97CG41*HKG9>:W(U22D]W>L9]JO.%)/7\W99_*\8 MC-*D>SG!PHJ*UEJM6F;Y4@<"#31B+O62#OJ/_*N:<2>9MRBV>*O)>C M3H5.;\> M2?L3;KL[%S,O#=0[EXL++?6J*U5+,J6<^BN=5W.H=M#[4\QL./, MO+@,\EMF=EO\V=]]+P@PP1P.M;8@Z!C+?U;*?M;6 \4?/!$HX+\F-B^9RG_! M+U[6^LA:GSUM2M;ZR%H?6>LC:WUDK8^L]7EKR,A:'UGK4\*[(B<0E:2:$ED& MI8$QJ.HD/.14HC)\1#8,?5-\.DIDHNE $ID:4?9R7-$:.9FGW$&:'\DY]%@> MY.Q;:JIKW5._I0U*;*H@7($X=M5I=?15#^+8"!BN ->HO5ORJ%=AY@4W M&$NPYN=D4B'TJV38'F*WQP,V*KW=&]A.M+RE:JFG+&TYCH+-1L[@J>HNR$;6 MY"@>:> A*#IJ1Q]( T\B4STJ0W_4E\@DO065);2F=OJC\_46')M"I8\.XQ-( MJH4S65%BB2O\_7M-KS\MZG5JELA3NOSUW5&Z"_1M[H(2!MSZE-%2W+F01 ]; M+UZY,+HR),HSJ\-"XM=#>@9.#[&ZNY>42<3:9Y)[%IS-RG-O1E&%?+YASQ?7 M0-1,U+V67B)E?)T2HK>&)4,6]286E0[CY>0J/&(Z$=X7J(GP, ZZX],NHOG)-@5I]Q5FJ-3-]_>+(OJ[_4RW*8>)=\:.%R]0(- M:QH+%XZ2*T.C@,[C2&5>&&"SU[#D1GTP8 M@XN/+RL[*JH89=T8TO!HK_?KZP#<'95^L&B*U])44:K,$9N=V3^;B=>T8OE* ML%P+S8^9D4?'.PMJ[92XN$E*+"]I1B7)*\"VR$>A<9?E*)89@^7]CN%S>:.MV#LBH0-LV*QS ># M9E*M.#T#-_7(T-7HHVPQ\0TWZGPJ_@]8CI M7@3K.HYGDEH0K[*\!<\T([A4<[&\TU11L-C<9RC^D3'"^98T!@$_SU\H[%^1 M30#CD[5@*PB*G_$ 75RXI6R_3QR<*_X#%(XI+YK>&BW+ MI8GM ZZ) @)H\4/?]%:@_A)FOJI]7Y5>5WC+YK6TLNL2K/_["!= M]\4("N8CMEO#[&IB#%^*?@*IX'?9F8UB27B@6,\4RZ F:F+-9SP+L5/P+D## M!&=C$!X9NE3D]4EKR;\S=S\98Z_>6MSH\B8_1N]XA5")-IZ%\NAP<@"L1/P% M68R^8>,$YOCEN#_0]^.O<7PSF@H FF>:#5WT)BJ!YOP>3 =DYA'\!(<99\X% MKX4;_,'"S,O&D>W0"@[1NOB4\[R,7$F9/P)VYH$Y]E?^FR,CYOK0*1$#W;)B M(#%L2 ID>"Y)@>ZO:DZK+BUA8EF0K+Y.%@RRJW&K@F/-A#$N!?JKOUB'R_EI MG]?$8?0(W^0S&B5+K.@N MAK\+P#ODI%_9-.'X6@'(I@EE-R6;)LBF"5M!(ILFE "2;)H@FR;(I@FR:<); M)Y8DNK--^K1LFG"NX_@&O:HMD(]D()]$X7-!X5&[:K[@J:-PD_!WN\/D%&L] M2I[Z4NL-S[?0H_%M(4K?XJ&[0AQ6ATQ#02SC?SVW4:B7HV[UEOQ-JG4_U7OI M:7UY+\T3?5W]N*_E>%I#E+R18>>PCI"U98Q["$16FWO&A1MWE2B70LB]RTNY M7&'@26CNLDQ[B]8WTDY+=Y=8>_I8VQEU:G:6'#7FGCWR'AO^7O:&W?JX;D/0 MMR;MJI'=,;3NFO88\5;D]#.YM4--/VMD!F1Q1F'L;3MD5N.^4RHK@R07NS[^ M7.NEJ/Q2T6=[M0RFEJ+/@O)#D:H,DL1X8HII!%.5_DEE4\^&0P/$J$9[ZOGA M%>QZ!JL]P];Y;+&QX6"5[X9$>#EW\%KOR+F#;\X^UR2+-S)'OOR!5J,O:J:. MF3./E9*,K<1D0L3GWB3,OBXU/HU#B*S93"/"6L:!8 M5$M\-W[".V4]A*R'D/40LAY"UD.<23U$4WQ%QU0,<80P>XM*B&,#BRR#D&40 M);S3>6U9>%U"U);E2(CSBXUJ=9="-"&V)!'W#!"W+1%7(NXQ(NX)XNTY5D!H M;1GBEUN3(?XJ+O'OO*?K&ON#/B@7XL4 $(_C%C:Y:F2 !D]FF*8?87;U) W. MX%GFS#4<.=D\NCZ^(I;_H[:6&GP;U[**EYLRG_MTF[[UG8W ?4PVPV2KO$J?W1'^W M;( RLP)U%-66FLE5>H/6+WTBZC7'9SG>:QM M-QS_2BUL7L=7-(M[FA?$6VWK_U[8/6NBC[KZR)RT>]W1N#<>FU97ZTZZ0[-O M](:#_QF,+M:3R):\AOW11S%E?[[_KS_N/]Y__X=R\^6CMQ'\P4Y3C#B?[7]%MD5-R0.B#='&GU !6_)'0&:B;3D@U(P!&KQX M_@]JLFG,D1\";3"+(Q7\8@)$D'Q#^0NP.BP(?/U/IDR-9Y9( $(M_#VSZ#V9 M]O\I-@.M>M'3E"41HABU*@_B,P': '_!56LJ]F\PN #*(_" R !PB9>*S!]=T\P0LA(!$+1KO M7=>#A2/J+JH8DPE C+\G_4JY%5#Y"G0%YX#??OY\"S*>*:"<^4!8EO)+I]UJ M)VD==,CLTH'R&=F5KZ(@_<3&(&W]A:)U.->B$\Z,A3)FI'8P,"-LU/)@X_P- M2C0GONIF1S/\HF7?&TY=AZ=46=E6)YO[)=N=BMX'(*NT4B>B\--(A\) MPQ)7O7PC(^42(?EO_VNHZ^T/*2(@I.A#[<.[UD&S./YDO+T\ TJ#Q3 WD*@! MB2T*\#_Q$M)$0#RE0RR#_P;NC+E\[ ?R#@/5/I?&@< /@PCHP+3Q,:3R(&$@ M^(I")M)2'N*W&ZY5D* (+YHRAU*5_F@]MD#DNS^V-^=M&,]]H DVR. 6.$N% M>% ,AEA%@7^#@&:4.3.)D(%FQ^K@+UPXC*+I0HU1"3;X=*Y]+9?T^1[.ZGK9 MG[3]S4[P<:,)X$CD9_HJ9]KN9]^0F>]#'7?31#:@_,@1??J3;>#7<0_B_-"? M8[O1[W1C#BA'U!@[FJ'P^@MO=C,Z;\^WY4QPB58,0AE26;F[+61T),W:^M+PC@J M(,3L(S&&:TDB>&U:15%@!Q8YD%?\=ATK;\Q4^(9%R]Z\5UA3XF5EPRQ#M:/) M9G<2AX\9AT>JWN\V$(??J&<;%T?U3Y\M"?['0@-BRWC[5T;UJD#NU*BVZ(C- M)LRNIG;[^NLFKS>@+Y=$MF-"MEY7U495I4!-R/9&FE@34L.^#1BWR3AW1N MEYAUTPZPK@M!$AO&>!T&,-A/.^!3-=>YO]1U80P>'>(#[]/@?1S3SRV>#>:_ M,#Z'.1/ 9H;OIB'G3&C)A"/!\Q1R-A;\M7$4;2F&;;$)G-?*#M[&J=)CG,QM MPZ85S$7P13Y ]B=&'-46$V+T9$G8H+$Q\P3BH;S. NJ6XF!B!)L":.]Q(L9[CPP?$"J^(& M&,^\M9#R@P$N,G/JPH&>%KF+3@?/XS7/,"N#8W),W;>>Q>Z>/0?8<':-N6.$ M0$8S-5Y-(/5LAJDUP*K_PA#T"WV:T+#(!\O&C_$5=[)E_)#P MIOG4\&>&R2*2>SSET;7CD'CF@( 1:RDXF9@L$FTH^RJ!@LKQQ>'!XB@[QUQ, MJ0B'<< ASRC$P31-_YS.3V?,P_BF"/7X_L> YK#HU1(9#C!MJ MU0-RJ+P>JORH#MP44DN:<($'77O$.)MB989V-J4-,RDR[%TEBG0IRR$].NP/ M\R) /-+.5S'*]=PK6,('J*P'QI:T"-E\ZSH3J#SNYEMO+[PJYK8O)?HAJGY' MQ0\_WYKP7O)T!]I#32?CCX77^)7A\P.S&6C-E(3I-(#RP[&D8]]T4@W9C^9&7'-?E)P092' M3#K .&]A6+[QH@C=.F!P;U9C[D%K_#T0Y->D#&=MFD0OC+^<^^PJF#/3GM@L MM16Q0@-,2D?DE0<1V6AX2T+8DNVD@!K)#;$)8VB/@MB'GV@MX-+QY:(RT0S_O#3>T7\"AX(O??K(?D?*.>._QY4O;?CLD+<]:/72 MHN!&W;0*5B2(VLOQ80'4:>F]9@)H>TUE@]2RBMKH(QE2B7BO2P%]0W_K[\8" MU4MM5;V$[=S]*T*N]1%T2-\><[VFD2I J@%?BH*7NX\WAR1'46'32&"]XV;" M5QOK5A^!O3OP[W\S9O,/RJV7 /#KXZT$X!H JL)9STTG@)0:>[K83] Q W0M M&>A]5U$ X^=@)I@^2\IBX%.N$=*VPBG\]PNC\CF+H98(K^3^(?P!66WP;Y5^ M$*!?#2M60+!3+?'5 B6^4,KX0R#/5PP1((BX @_6^6G/N/P_J&G1:[QI@:H[ MUG&OJ=4\)/3NJ6-V1U4Z:GLP4KNZMF&K@%X^4^P@B("]DU4#]LU*=2G@"& L MX)?%_>.I4V!J.!-)[;2D/8 "#/NDH MZ,1(7!D@)GP/R[/"^)/]L/VRB@_U\& MO9;H]Q67OF[!^3]HNQ1)A%<&,7\I/JD:?Y[L@6P/OCQL'V[V!R$/11/&6-*W M4&8LG'H6/Y^-01A8RHJ#)6Y@+6 M^-PC\$>?^]MOS)"P=/DV)V!? ="Q@! U(![T"4+ 66ZAN%3@RX(:+O) M7)2C7J?5_O6@3!-VPH-G/ 2295J(>3F622PRO:EB!*=Z?8XQ6EOM=MLJ'&!G M1KR.F)9X*,(W0<9C I$4Q,??6 Q ME26%M'7Q[(/C* =UT85MPP#X=017.&993V$<0585=.9Z,]M4XO+HT":2QI2' M0U("N9:2'(PD8<2D4/ ,B2&)#?"V#O"_A2<"Y/ASWW,$JM&/.!1,(PJHK!_= MH4 "D1-':/G #X<5PA@]X#:QS!EZH7CC%WH,$?3\F)"M:E@K;H5R9#K0 MGX@6#CHMN;@NF[(%MS\FX4R:$#[%&PWD[IO'\9<:"&WH("!^HL;I',BA1&<) MH76AQ.09"XIAH<\^9*(]!+[*QW/R'C:-%,:B M)TJH.,P(PH)N#@=O"D+I2F.:-42I8 RP:4:>:Q!6(#AG2PP>#OL2(^ &IV6%*/OVI]X:O/_A MO0"1^&IL-V#GDVP_GA@\MF#2D<^S3( *.+IG+\"D&11+'8O$PN;4\P*ZE("Q M'TH,[+3;B)H1+H9O!RS)S#0$=S!B]P7C;LBD;Y)* Y;B0 A]P-,Q21^ZPM9A MO+<3Y=5DDC4SR5O4M0GC&T_8G0DTH;3CQ9RW2**'?1^/*#)LD+T@9%Y2IO^-M/<%+!!20IA#IH1$E(XACW#2YO MN_%Z#'\!)#19PYTP%\QV,TB5[6-4('."A/?ADY%KQ"G,Z)G@?@FRQN$O#"WF M:8)+8X'_ JRX#"T"CR$6$IJ)5FODHLBV\)G Z<- J+H9[,$;3A FOJWXAC#3 MC?9)S(,PG6@*WN(;R!@R])#T![)DDO4SF9*SLSN8."_FSV8TF M'"?-%[0)/56AR^+ADWS#+$+2#0H5)N5+F).'R:WT(K3YXNY4@J,%B?&OYC4G MTHHQ!0&OX86$&*( \WEW27*KY;ANFCR>3SA)TMDSM@D&AGV;.Q9,D)RPV_A6 M''MFA\M]]S ;!36P7&8LA^.JX9/E7>G:GO!)$P6\,"X3.(GG67F>7,G/06+* M"\GY(Y"9HT6&*%8P!%-IR#N5X/#$> 8T%PM$XF9#9/UT=^CN,6RG<'6^))XX M_DG,[K._2CI<(A1X(#_1'G,)NW&W0F%$982!Z'"U!/^$U+)Z:8ALSK">#1IX M1SZ[1)PM,;*8SA(:\/*X2^U,Z3)>\." 'G,OWF%JK\[A\X"TWO3:[2?7AN/# M'L!<(]QA%D&3]+:I,4<5/%$)QI35:L:2QH&/:"?"#[Q,Q@WXHNR(L1'VEE"?KJC)0,H_JGQ#$?, M<^,EZA-JQ23BE00H^UB>.2#:'SJDG$K^A.5SL>*&N M2I]01S\RSTN^[1_P/D/T_ELLEU(0\RO;]KT9K?I&PU9[-*K\8:J2+*XBKMM0[TD&AI6>GOFEKQF.8=%@. MODT8,WJ,0*NGM>/1=%'!R1:BLS5/22BJ_&M,)\=S:(31[)EG)4]]J774P6CX M[J1FGDFT/7FT':B#X:A!6/NF[1H/*G^2BOWQ0KD4PNB=:.=0@S3:T%,O>5ZO M!M="0FX>3FN:.NA7;:?;G(Z')WX[E_I0[?4[Y5F.; ^X V-)XSG[4VY+(6S9 MOF[-0UA-;0][1]MH[\0O1Q^I^O"5XX8;HJIP0'=X7*#1W,5BZ2A$Y#1J\3"; M.*S->+YAW=K+MF?.TRBI=OAF$_7EJ-NMK!\,O.0^+1O5M7^HTD46!]O_Z6? MF1"Z/*&YR+L?%S&4'+V>GT#-*V9F+*[MMGFA6?%<=I[''V:R:F.U*8CUIK0@ MC"XKJ9:(#Y+^<&[8/!,Y#5(DTQDI\8\2OX.E,$80,*&*.39/7[,K%(A51OL& M5O$LT\-]XE4[47KHMEN=S021]0H4.1EK)P^UF#Z2^D>ZF&1Z+M4Z%W:/CA-1 MJ?P]7V+9R\PDYU3/"TRL7./1]6N?-4U\2EQ#)TH3^K"E)S21M5T+::+(4_9& M(B-/$OAH?DHT/IVTH:1E**?4LBW*"/699YJ1+][1*T!JV_J_%W;/FNBCKCXR M)^U>=S3NC<>FU=6ZD^[0[!N]X>!_AOI% Y/NUB#SM_OO][\WW^\>CS";<.XS0*0D+SI31Q2W/. : M@HC/!DI?V*>J1R8:A"JS"C=-:)N_+O*#"*R_$LHV;?*DRSVT7 MM M46O8ZU1-X86'AO4,HQX.6J,M$[+K37%]"R?Y_V?O2YO;.+(M_PIB7K]N=T11 MK<5VN^T(1]"4[-98LC2B/)Z9;P4@0915J()K(87^]9-WS9M9!9!0BR*H1L1[ M;8H$:LGEYEW./6<<3??\[;.7++C^8 ^4Z\&_U__Z]=0?L6]/WS[_W\_P=/6_ M>"'_?OK\_.S%J_-?W\#)^\.K7]].7IZ^^?G9V\F;Y^<_#[&%P^S+#??W-P?E MG>SI?+^DSM8W1?O.'R)RZMXSWR21U, NY+RIL,$R:6U M;_$7KKBM?0;=2_179+K%3FKFS6W4 :$N1>ZUQM._5=*I!L;5O?='(=%!-'0@ MES4?R*]]U#AY_CR;//=NR.3OI^*NW/"0OB^K[+F,VAMH)SN'[C8,9>X;F0DL MM+Y*ZHC#:B-U6&]/&]#BH,,VL'MU]6'R@?AU>+<W&Q#P!VW7I2LK:I#0NZ[[QVQK\ M?7_C>8T1K^FAMU..T7J3$Z, L@O,>O*BS55.M[W9@ QALMRLP>A0Y/#HX7]' M201^M\1048LXQB3YY$\/30*B\ '/#+GJZ7LW':J#JI9P] M:'$/T$!=1R&#I 5E6Y-QIMR(M=D809F#(;7[+;+^04@H)AM>:^IM O:W!DJP M.&/BI[D;GV/D"9E/0-3B:YT;U7M2H8"^\R$K<5-LO\=!FA%L1Q2>^35R'U;] M*AY8H8I,TTQMD$\X2 ;SO>CRU_VT+-HE.0#PT9=HD][@PFJ!SS%P\OX&?'[G M70-\'O_3KS+@+SC2[=\;NOWOC/S9,B>R9S3F93S-9Y1URI@$\[%(A""/ =%( M+'/2A%GG&W0_:[RYTK3 ("K<-[JVN=WO%)C;V CQMJ(7T-%2F\][)T MM#I_K8!!Q%M$RHE"2JJ9?'&0YQV3$-^E#?KU_"FS'?\57$3X Z]#U/\=(Q4 MAI(Y*>CCY Q?@568(0<1%?J)AH:_-?AZ0*T4OV3^@M M4@ET A=+6#S@W73$[@D&CWTKEB.$Z-D!5VK%5X#O9\JJ9-<;6S-Z4[:#_L-$ M)D>N-%N[F;,L-I6A0PO<,M[K D;(P0HD6K95[0VEH;H96]J4 4"R:MH)H*OH MXX^94"')1^T+0K#2@2$GY$1FXALS0\F0"-%=CB-0 &_FX"Z2I?B AQAR19VL M_/SV#3-H*F7?#!V@P:QH*B"D3GBM9%#_S(C<;^UO6G52L@!^*?C$/"[CF.+- MT"Y)=3[W(Q"M GX-_ON62T_S$IFXO)OFNG\S..NK0*X3SMK8VL'A^>]-Z<@A MO36:T^38OS&^$/[ [B!O$LCV!6O[P7O>Z +Z^JM*T&E@SDUH;4.AA-=K;5H,5,2:7@Y.NF HMK8?H#0 =]%$UH'=BH*[2:2DQNQ.;:G*MMX6?$ MNTV"!AG]&EU[ZKRGSJZ7/@9N_YXRW>K[TWZGLCBHAJ--"!>49ZVL(D-D*B#1 MO?"FIV9IY(TPPL$UBQDF6AJX'8KE$<_8'\"(7RPVQRKVKBKVWS]&%?L?C^Y) M%?OFE_KDA%7_^.:K8[7[DU:[O_RLJMUGKWYY^^;5"\*1O7[SZNS94RANWZ24 M?=>G^9[.RS,X&A2_]90JIN"YGM7(B$IGT&N )\ZAL'K_W!?E5YZ'EYO9EUOK MRW$XX^TK<>;RAY2^<^[ _Z @7K0+(.2NR:\!?%R#P0S))2$VC\;6$GM/;65Z MN@%R47;K&RQ"MZ)WA!6L?@HTP*$"\4RB&9 H*@#)-P.#.L_H/0!_EC'[(,"@ M,^['A NSQ /?#'6I).T3)&WYK^?/SO[B+]Z7/"KP*MX1>7K]&!('.5"6L@^( M9+0Y<2-O^Y(=61\?P?5Q##$M:P<2R!5GLW[5D\<1#1O9T5 M)-#3N(N\B;GKQ7IUJLUE4THWV>U!E\QOPS>XUA\]R4\>??6%(Q7G1U_- M^5^BW&AVWX/)#Q*6(,=RXRX+=Y5]\&#XQ\2=PVIK%&KNF P6[DI7TH ODJ,?C^XQ67R70WNN 8J"7SNP30WA=-OEY.OICCKHC. M([N'X/2B_<-R1#-,H,T%7PT/7(+LS<(O#'T;XA-&?HD0R'&>@R=&8 M8Q?(SM^!#>[JX1>R_8;E_N^ YQ6LCZJ;O-!#%W,!SU(3*>[=X;WQ=4*KY"J( MG(PL4T[47&\N,]OR ,Z3O]:_1+>$= >W?$\D9U3?VN M ==;Y5N04U^'OF@CI]B[5WX8I/4$T_;QS$[]TET4E.+6S-2V9Y6D$V?>BH;D M'* UM;H*?_N9JIO [/NHC@H]BA0]P'3^>(N)Y49]-T!RX0OJ0]%:35$<7E; M(Q3_("C:4TNB,=]0&"A83Z)N=%C]%(%\"'X8E%)0&LFX3*:!Q4Z5J- 6('9P MO=O)V178YQ^>%SKF J-_O/9F\GS7WY\]>;EZ=OGKW[YT [*?_Q]1X_"7OOLV"+T"9*F6W?! MG2=4'R56^^.E53\12<[X"[YX]M/I"TJI/GOZ_)>?/B"G:G;1@7BEC'(&7#JK M-$($,B'Q0W!NL,;&?:DB> ><'!?L<;#F4_A0Z2[R4KK" 4#PP2W=?MAO9I&. M)N@_L6[SZ/0FA9O[Q+D\_L;0B3CY\?3L[:LWGX7)^;]U#ZTTI//MHS(4 (.@ MJY 4+00DF%B?-<44DC<.$];UA4-3HS$$61Z;8P M[Y-V VT5)V-H+O<^<6LMYS$P39%;\)=4![F+@G>([;*K:15MOMUCH")JI2=? M)T-W[@5%0I7]"-9? SDRS*H,)&P3+^ M)7P<5'%IS/6PVR=1>MP&^QLM[\VA(:)ZH)U.6,7NO5NM.V:FJ^MY-GG:]!>T M\L_J=@5 ?ZPR?L$-/S\^/3O5KIM8=WW:=Y,?GYZ&R%J7 &?'BS;'Q#IB6PJI M3PR>R>PFZA"T6^BX6FYUM1#B"M(E6-6"/@O6M9Y4_6I*';]JH(ZS<8NS<0XU MK+A7"R! 4+++1=Z>D?;AQ$ 7Q>^M O3$>R:)@_UF5.11AAX@+^ WNLI=N?GM M3N2=][OLF.$[?K:MWHO?A2O& ,86DG8GUB\AURE]R;H$_@*1K4/"//B^]7VH M).S"(4X+ [L56-2YUB!F:Z!Y(>_D8]/ MKL+*D:74^7ES'4\\][FJ=#T7]2&\1.M";?G+O%D=K<2!+853TZ.(^),R!V:@ MR05 K2K<\4 !A&[\8KM5D&41#A'L(MZ58CLNA(-:"+^!#^#G=\U> M1')"L.P?IX?\$X2=?HV%:DU/6!AW:NU]4@!0Q?&ENC3.N_ M/04^2O9P7-$'M:+?8N=F%QR:E(-9>VAZ(T!%#BA/,.4,TBG0Z>XD P$ I0P=)P/W K3O>60M/1Q!S4 ML_U[R0[DG3HA6 DF=0&!:\[-AD[3$ISJ"8#J-:.JI]X6VA?**A_7Q>&O"ZIV M1XEX*0TL\J+$SKE:0FB"!1#JFAN*"(/K;<"R6(NE$>1XSPQA)H>?QG'PNQ5X M2 ESSRV7D(Y+YP-+A%2[!8J9B#F#4/HMM5L2AP=8@!Q2[%4_*YW_KS^/_-=R.*LL1-_[] MXW]LQXW? @3\@Z'=QS3ZA_B'0R[;0$/C#?*B4UO><&/JHI[URN;"\>0)R;P0 MO2NDP_+)M*AG>9>7FQ;VITV@8=?JV:O)N6SDR=IO)@![98(1@',#8W7B6X9D M72V0H!ICD;XJ A"(V6)6=>,41D#-ZE&\3AQLN=*S8IM>L:SK.?H(&)' 8E0POK;>YC2\Z6\#J0>GC'*KDG";(%Q;Y+@)4B*E.YE8;G\48@4XH-V\ MF-%^EDH==ZOU(X!%,!J7 "0SSH4_Z'%Q:#MO+3_&H-'1A)E_]-D[HHH\+IG; M]0YA4I?YO_)F7O>M9ABTE3P@6 5,!NV?F-IBK3%7719-C;E]:%C(KV2M(=#B M]K,,QRG$.KH#J%B #8MF@A!%BJ@ F0/T]]^OQD*"_4R&T\,6+ MLP,,HV_ 1'HT5Q^^V)\Q>4)=DM9Y2!NHKPRHLF[PE@G4_!#Z*_0P,0NJ;0YF)3Y="RZ:]52/TO>. 2*H$"I:?^7#_E'?2C^7NV]C@/"?CC9-YJ[ M*+,@#2J_196GA^+VLHBBHT/XI@,[_X9/,5743 M#8";=]+E[QP2 R(RJQ45%70X@<5@@0RSX.>!,F.SKDU'PW2C^2_B2'WJ_"_8 M]116,%2S1V LLG71*0"!\\P''FUA64^EG?VX#&YO&; >,[99>G-;KQ#D*2QL MG%R[P+HSJ)RR^L)US?TB2)LW[IC'OGU[3'(B#\&O@Q+,!7Y?[6RX@.9!7 MHM8!CAI^89HW38&9J3L&F_^'3^8/4K9&OM:F7W?,J"U0;'2787I)\0D-J)\U MZ.5L.TXG4=7:_ZKKFVF.F4QK>0/7.K.E(_FE\<"C!E#$/N&7BQ:>)RBD'3$L M.];7DX?W!\/RR4DZME"-(//*&Z[3>I<$LA0_6!S'.17N-Q^18.7N:(H_.H'% M00[*=9QQ#-!C6FSS^G[:-8B$TXT_Y(?O3UU\]>$)$7BP1FTW^]/>O M'SQ.?@?C^:6V^@HM1.J!'WJ9LYQ!LS;?R7^+]/Z!K^I\>9M/>@ M8\37?OSPP=^#F.?$)__JZ\?ROQ]?;[R/_X,&]N/ MV4R+HS^=_QS*HB_]N+^;G/O)74_^G*_6WTV>UDM_1_DP_CU\_)?Z$C*9[>0U M+8?3G_23\B?S8==VY9__Z_&3)]]-_HFU#BG>AB^%CX3OG99^8IOZ($NP%12' M,W^E&4C0N#]Z4.GTDW .?A 55IY7LP?9Y*SQ*^ J+]]-(G8=6 .GI=],R)&# MU[I+56!I#EM@LKD$4;\*=<5YE?4MX/+#O[G<(,1X]<;/ZL9L"OV@Z@1C>9,9 MY F\1PUG0C&7-@OM@YAF=;7U\DFQ$)CSPTXESQUI Z/-EZO+0V LL MZZ%B2ADTTKI=NP:9!V'=#KB-J-T)_P:6(\*7 Y[TQM8,Z8Z SXBXZZHZ%6OB ME@9*U(U9.^D_1SKW,')^Y"\+P;]*U0$_NMT&47O/'\JIB(7M"M+$T]R_@APR M4MPOJ0O1M<96PX([+K+L5H5%X8J,H>"+5?/^E M^=8''+]BV[<$&FV"Z=YO=.X7P^">GO&1+.QS) L[@'6X\Z!27?@K8;(64Y'D M1H V->C'^I7@/58[02.3PL"*<$#($90LSE2H[69.JNU(Z%E0;]_5N44"J6B2 MMQMY.=H9P>E/#[WD F:I<%C+OV>32QY\0*0"8I,@OJAJTJ&'!X@)JXT;=XI*_Y[^-(8%#D0!'*<1_,5;,[]K8BTJOQC^TDY^@OZ^%^$&K\%6 M^/@ILE7?W?LULZ=7?]]6$:H.$_D\RYLAF2I(I4V>__)447!@QS@D#E)X4[> MUM!E[Q\M')N\F-A7\Y,\:DR/*^/ 5X;"\:<;HH8/Y!1%Y9V:KN<<#ZGA3J9U MWLQ#Y\B;'PQA[QIXX"KTKEP.:#A=*T6GRR@BB81%M EX/.^[4?1+TA#PM>," M.O %9/-]F!5D641*WY?E"2<@2C^O6TS(R 'TT]GKV!N&N*"%1M:BI>.IS1<. MLE)K;I2"(Z_VI^-L,_FB1D2XO\=LHTK/@U@/76MM1G8+O MCL'S02TX6%)L/[#T*"L+%AR>#OZ0^ 6775$W(NP8DH"<0.).'L!JI&9H-.2! M>QWAA#O@A(_N#YSPN$EO/P*%'O"Z[8+ACSNWBP6*R7MG;5KNA;X_D(PTRB". M]+^'?#P;%2EM8#&UP?HZ1,Q^OT:E#>Q"<=5%M]Q0<]DD;BXC8C%J8J9V23@< MD<@G(@1"6,+>J6Y$RH4B:P#-7=/I?\/ZVR@)@"DI1LS)G#=@ 8$8")92$]SD MW<:ZS\/2VZ(_E%1M&'J"\S(G_P&Q,U!U2,K_,T34A3J40P0@<9VGJP11$QC* MR%\RXE"G,<",G6V FOOE4" W&(OX_>ZCG%G4^YZ"XOSK@>EX]/?OH%JQZ-N< MT"IX/X#VBM Q#PE3C?E!FC?Y%9^JE7F^J[RI$-[JN@YG(-!5^?!>H MV9+D1&8,#V,<3^C2)9QQI;3)CKLZMK(F'Z;)V!]@O8?8UM.STP/7SSKT K49 M[VVX&SOB:31!^^GL5 UR <'.BI.C/GR(ZL/!_J.6ZV#0%WTC(%H\,0@>%+H6 M,7,%2+T"A6;!U-1-*'KJM5(HA4!LYS6"NE;Y.T?M]JTRS%%JI6@XW3:AS!H5 M!@@Z]BI]VB"Z:VK6]])YKA7A!J7T#.<<\;^8X',_/7TW^\?#AHV\? M/WSTE5*6!7@;4;?P@9=7E5\IB"LEC7:@)5H6:S;@D[.G+U]Q>RZB-Y49%]%^ M0HC[+VCT]3-SH+3JNC\/#AN6H./$]]WOYX@&:^\^3R ]3 +*A^"QV@)N (O M 1L3J&V*%)X,DW@CO0L@0P#==G1"H;5FW(3W,$"5;7(*#\U#02VO5RX3)A>! M'JBQC^ )WJ",';$[UT*#NR7\ C$35$8W9SM#$]-77/3E F#_&,#-Z9/>BW(G M\_K*HM,)?IY-YOG*1QW#%C4>";_#&3+'NP16'W@?Z/\@R>NZ[_*/?.C%!ZH @F6SM-R*0$09;E\FJA+-(6_'HY,&U@+A]S-"@&Z"'T+4& M6-(WL6E-G,+XSGY1@__#)ZH)ZR,A$)[:&*V4(PM$N;&OC!= G/\,O5MP@0:V MF%?XB=A7>PP@JMQFGC*Q^/2S7P>=[H'-RYNL,E"V M#(Y(XUB;05 H/"MFH DQTCNF=X:P\&V E>^2;5>:IBT$3^+W?*[.XY[:FX?9 ME'ACR*M%IYHV)L6\ 1!98%YD-T39B0>J*8 7!BW+V$"]5';W/(LF#9%#:7O\JCA_^-O9)U /]U=4?%$23^A?(IZ!&1IN/77_\W MWNEK^-K(Q]NT">XW(JP!@JQ=RR+M#.&[$I-?Q*8'D&)C%'1T!8W6.+W%F2CS"E,/TIU3$!?>'@ M)](7(ZJB^06<_YI0GCD8L*G*CS'9NWGE,$ID7ZV>V/Y:8A]%Z>=@#=*'R,]B M2@?SA$): *;+\(%P@?3M'))70K#?K M 7'L5YW? A0+\<^%:]/S[S#GZ5I0]HW%@,,P.'(>>&6I9IQ+'I[^BCV+3$QD$0FS.M+_I60SE!Z#+HO+KRI\H_G<-ES)I)" M$F]]ET7IAE$_A8Q5ZYW0QA$VO9X7REIIA]<_#_FB!-CB8V#8.1%&#F*O)8L) M1'?M"004Z8TTU#K$UMW_<5*,*BBX$CB$AP*XH*(A8&W M+;^>.O@BI*Q),NK=H@H^ _8L87LFQS?[+"1J#.0R&F#+USF:#;,$5L>Q4CS87M M(X&ZEW0F-4$4$VG*MKP_#Q%\!#>K=$8(\%^LZL3HD$A_!<8DK%;'1Q;D #:4 M_@L:G%DJSQF.U-L]#V_N?6&:0'R[W#_0[W5C^M]2,04\_:/^T>%DW+,P?__> MQ0^6"N=2PL<6#,>4VPT(N\:#O*A@-&2O;N&5)FBI.%5!M;:VM1UA!2426D<& M$2URDF?0HZN5F@G?60B!O6WVS[F"%K":^11 @#23$U%;5[:0F4W=II:@AN"5 M1P*C78B#Q_<'<7 9F+/UCU77?B10Z]!=GMFMWIF4LV9V>:<+>NZI:9[>5_LX17]8G\P7_ISGG-J+ F8<=&" MBCEC'#"2%:S\YH8J/ 7<5+:JYGU+[9/^-Y2:2QC_T;JZJ#0;7AI'4(P@&>^X M^A1PGH8$'HVZ8]._]0!1V\HY^N(R5W=]6H( &PV 'Q7CC #67 >)CP^X!K(2 MS,-%1]J.R<_ WLZ\97:;J6,YI85F1I#>5R748@TFM>5A^9#G96,&\I=X&06I MX-%Z]X<>A4/PA\8^?&Z>, MY),#S]"$P* <..P\LW>XC_OQZQ]L4F2,B6H[NTM$XB1IM;3\D#3S9Z97F;9? M"1(Q+;,,=75=MCR)*=0FECI@ZA1!WASDZ%]7WH>"*0QQF??5;/F1QI/+B5M' ME0PBU_AOS'-CXL@$@U%!419+;, WD")ZM.1^RTV]!X!LO-,6W00AT#J=;C9> MWM7VZPJRQ(C-JM<=KK=DRA4/B$D!$>EC'9Q;AI;_AT_AE8H"!-L[ROR'J >: MD4E:KC4S. B7X20EMH\-&_.V.PDMMBO D#2$=>V@/^DXW9]@NE$7:%X XJ4O MA3:D:_S-O$,=H)LT]2Z5PQ[@ B2AP7DUFSZ5,A_?&/;V(A('82"/Q>0LXNB' M<@&\]%)#9O.G^')X' MN$,I*(WMOHE6( IRKF/#H:G3A(;04)O&MP#91VCJP4'@\ZN_@J!_B.(.45^:W(6%@ M_$$?@9V11H#P*$VED7#4R. _&/H@CH?QK4[H:)5)]R#,-4QC0\&W)LTNB5*M MH87 DWH9^$>C=.A(Q#$+66PXU1_NKWK@."7R[*#&KQ,Z*4S680@(B;:V9;BR)BH&(?YJ-I(!U(^O9T"\ 4N!XB\&X8 MAJLEE,YD"($3 DINA#VSN&C_LM2^5<*HBOPG#[M\?; \I=1&*UD^QN3DFF' MYI\:G(:V>S#Y:;^9+=I!LX$J)VDS*=V_:&W3[Z+LBSE3T4;MOZ_,P D^85!: M&:(D5/(.D<(&<01]2L)UZM\D(K[US]Y@U5HE& P7@QG):3^_@+2 85B>NWXT\L>"-Z!KTYH=.H!<&[@O"^"%ZCAX2& M)58>L12OM_64QQH9U&T @,?8];@YCY?A@"I\"W_NZ>OG]#?:,=A*C157]]XO MMQ;&?"-E36B[HV71N5EH)$KP;@$*I]"!P1>Y75$TZ.%A$?"#X)[@DL)TVKG< MUMZR&S)7;UDMA[D0=I?K/N*T4PM:K43;VSX5%L=-EH1?/.B;>-.;3^N>>:P! MJ$ETZ7[,N,-"F\T"=CGIG&KK@#(&8L'3_E/=(GJ)NM,T%?@&V($[)C M-NPG$:%SB9CQ! CQ@?#1H-@\-)Y'2-TN2-V3SP92=[< 6]6C0?R 0+EL!ZH1 M"&&M#P+VD%Z+]R6P]0L-B-^>JY:_*)Z6WJ"F_FSO.2L;>8+RH,T />"NN8?' M! SGC4<0++F E[&AU1NN;CNMB_ XL%\]\0<_VZ<@**0WM%ZK>Y^3X,"66C' MTZ 5PA#[I](M[:;M8%ZYLW@\!.:*KO/2>*KL_ET5#YK7+Q07*]"4PR '@B8H))*\.[<5-+P0O<(;6 MLYKI8+2=)C3LX4C-(:60A7?$MVKR*S7;N+Q=Y9^L1B\;:(<(7)9@L\'],H^* MU1HEYQ\2$, 9&^LWF"]S0=]'1,6EB_5IXI@)'0FB3>B;2B!^1#>0, ?@O,AS M&+4\TW7AYZ? >!4O,PXDEP-5#GV"', ?_']"-W6,SXM<*W@._# VL6-S$;;, M"$T"\>4!A+-MBRG@5JU#'-I&XQX:IJP*^D8.,9NKPM\R[5IA/<&KQ&^D(8I78],/: )HD!&KJ":1(F]J?K=5 ZHH MMEW(8ZE'8?J45!4$96$$/H=Z:ZW_"(&G1R1KO&DNROD).)1L&YY7E0^;\4,O M\FFFHA^J("=NIFG5A(B&PTO:Y?M.1=0-- EI%(3(@1(3,/8!VY MGUX(LPH*0]D+*<05G,[ /V+Z^= 9II-K)/4?= Y,Y'R8Q]>^24'H=F1(R"5) MON&B! H(_S'7G(#RVXG6K9@.H1L_)H(9"Z#B$%HR:KO=P:1UW[J2=^<0VY0I M0+ETX/6W;9$M^Y39;*&S9_>.52DW0^ESBZ1%2HV#2?IQ- %"_[L&,G5[+ZU4 MY"M^V6M5&B7]2.<,Q];C"W[T:<62>AL 8:'#G@A]9CAI%DW.6#VJML>*OS'6 M'0^<3<&:=F//,=Q:&-W6K?IN,&^9B'9&6&Y^QKB_$%*RS$T\S;O9DKB,S3OH M@XM Y+8]+CZNR$'*%70%F++H?\C^OR6:%.]B-?,3V+.;;6 B])VP 6@,U\>^ M%)&BVCC"";9.TY[G>/K9I-E?84RIK1D!51N8"YF0W#( MTY!LQW 1X< (@QVM&8%5\'E=;NS=([MTF OFNIZ!*#-EWFS=%/ZQH08)82.YFN6&Q57 M+_*J^!=/AM"4G[U\I?+2WWIS[*.A%B5>)C_GZX6K_'*^R":GV.#E;WIZ=CYY M6D\7WGT^?[!^@KPU?>FO> M;S9Y#LKG]#;G[EW1]L7DJ6F8\)]\F1=S5"'.A$/[9_\^\WKU8/*3<$.@ 6.5 MD4GKX] 2&FMQ6Z5Q)0\R';$=5>6HF =[?AH)8)N=!L"[]FF,7JZ""V'"Y;F)KAB;FFE=C7DE9I4+M$/3IM>DR M[04*8O6'6E[?[=NAFHP? EX]Z/Q0[ 64:1;Q#>Y6%GI-FWXM)$)9-#$HV^?G M8C(R%YR7GA&9U,REL6 HWG!G)!9 J0N1&T"Y"XEEOJFK+C;>TI(I=$G/B!%O MBTMGC3/["MN7$C4CVNLPA2(]?N4N;^1YAI\-NW4@+$SVQP%DW+MD)EEZ? MR,2RDF@B&%G&V++1HIX]0['*,MRIHOCLW<45\OH9[)HTCWI;2<,TX"])^G<' M!-_*$#@^[]?1:OVF8 *D%IQ;7'.)EA-16@R9('<()C:+8$#@-VN;+G*(&*!\ M[GV4=6?!M.&A*4D4*$"3(;TV5;>58'#NS*^I?7M"!G"'A3P6BKY_\N6Q4+2_ MIQE(E-'W&+( *6VH]+DQMXGDS;>5LR@?7RY#?;LSP2H1-3$(5 M\/R7G/S<95+#AG0E9P/G11NR+4D7A;.\^1*B"QG8M>T0Y"]'P3:K$13=>%)Q MDQE&)EO8CC9_U.2.ATAHVM#S!P?AG;-!'3P81)V(C^'B-I&IQ M[,E")VEJM-,5,XQ9@72DIC&=!1#W"S2%TEOQ,@I'F_ TRU@':@EZ2.25N*JV MC[T$,AF,L6&4;1V6YR<;E]/IPKKSK/YHDA8; DN4+@I<0T><.=BCV/B4\#-\ M?G#&F]@P\IFPU$)[%;P(Q07LL ]7SS3.D$Z=D'-);0)N3MSK0E0!O.;P)L+@ M ><3IJ;[:HP*B#)!U\[O6):&#S$L,=*@,KF57]*<#N#2R"J+_,U/8P9^9:GB'CN*T@X0LFG8,5&-R(( UJ#&0Y6$JE&K0W4!M<-[;%S;\9<%^R M<\SE"3Z@Q M')+D1(QS1**)O2I:9Q0'*CS,Z5OQPP>4;;R)*2T0HDEJTW\P^9$$.;(M;PD^ MA1 &&'+-@F&*W7!\\"&:)O='I4:2/ ?&>3%S6=O6=/+@S'F268:M2+G.]"OB MT<]6A>GMUCN4UJLO 63? M2NGB*LR&;F>,SY(I'#&WX]Y:3(D3\6?&Y%)VW5XT]54,>X)?$O-E,MQ\UIGR M,_I%FMB(GDNZO6%;NM6:^/V]8728X/2;:!.@1$V](1$F]JNIA&C&4S5/5!O; MNT.7E+\+\ -FU(J41R)G)/@US'FHQ]:'@20'3@$V"'Q[;+*ZU28KZ>F)# TS M)M/Q+R"B+8=3C>@5Z)7B]3;8OTEHF5B\+)0AC_0$MSO7PW.#^HT%H0.!4(?M M;T@EI-%98HTIR*RK15E(U$%P(C%Y847P822DP&:-'>?ZMON8T]CK;[K51RN\ MRI).)PUJ(4@>PI*,*!.9=%FUWG+#"H*>)2DL2@D $W/&G(\VG")U7[P[\0 M4TA@C\*D7\P?9+#JX1[LY:^.D_Q))YG%S&P/$QV1@]-W-&S1;QVG[2ZF+>Q( M3(Z;3QO63&*$5KW[^"C MQX7T*1>2R<"KNVPA(W&N/72%0XYCMO01E:2^0B!V*W(2GVI: M48R4E*GC@#+.>0?1$LW?,?^'*R7EM1BF03#]T?;-I1\[4OJ YB'8+)EB'!MX M&FALH5.3@0DAJ8C(D!S;L0'ZDO:$0'6HA!IE3WDB/S]<4?3_N&CRE6DQ,D\C M52+M^6[2_I?!R]S#V?VQ8,FDD3;!K>D@JV_R=XZ@C2^?_+59P/2.$ ='4&0 M$AP ^.6,;F"4U'?DO6BSQZ3J9Z6#9JM9,=>N#TOT,L7>/F]QJAKX:GP$D7.W M:D16B[6?AM&B@**#O@-ONN^9@-&U%<.;<*H32Q#, <$W>-#CG,A)"JA%ZX2] M:R&]XO]Y0A,0<<-*3QYT8>A,^E]USC OB+S\=7--"!QL:]8CS_L9,'M\;B*> M;5FW_O_]<57,07T,H8%MUVQL@TYZ]&GNJ*@634Y-N7WC+&PEH[:4"CC,@-GEW&'9:I"2;W6(N:^.@HN.JR-$&E?-3(LO/ M3!$$8+QSKO)5+"%:2 MU+,""SF:0JVKBYH@LB9.H-/^1HLOK)Y0B/N<-B&%-;H4I)\--?Y"!F1?'01> MQ6A(J;SGIXH;$)C9"LS90&',9$77.2"]PP1[GP4'"J?N,B_[0($"_6K^F,.J MHLC F:??>A4LF@ ;"_;6 \^_\07-V\?B]?&ZTPL.P,"(H96^FH7)Z$8]\ DH M+R=-=/\?,FCHV%(]/Y7T1'?;#CX^6%