0000851205-23-000020.txt : 20231031 0000851205-23-000020.hdr.sgml : 20231031 20231031063055 ACCESSION NUMBER: 0000851205-23-000020 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 97 CONFORMED PERIOD OF REPORT: 20231001 FILED AS OF DATE: 20231031 DATE AS OF CHANGE: 20231031 FILER: COMPANY DATA: COMPANY CONFORMED NAME: COGNEX CORP CENTRAL INDEX KEY: 0000851205 STANDARD INDUSTRIAL CLASSIFICATION: INDUSTRIAL INSTRUMENTS FOR MEASUREMENT, DISPLAY, AND CONTROL [3823] IRS NUMBER: 042713778 STATE OF INCORPORATION: MA FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 001-34218 FILM NUMBER: 231362199 BUSINESS ADDRESS: STREET 1: ONE VISION DR CITY: NATICK STATE: MA ZIP: 01760 BUSINESS PHONE: 5086503000 MAIL ADDRESS: STREET 1: ONE VISION DRIVE CITY: NATICK STATE: MA ZIP: 01760 10-Q 1 cgnx-20231001.htm 10-Q cgnx-20231001
October 1, 20230000851205--12-312023Q3falseP4YP3YP3Y00008512052023-01-012023-10-0100008512052023-10-01xbrli:shares00008512052023-07-032023-10-01iso4217:USD00008512052022-07-042022-10-0200008512052022-01-012022-10-02iso4217:USDxbrli:shares00008512052022-12-3100008512052021-12-3100008512052022-10-020000851205us-gaap:CommonStockMember2023-07-020000851205us-gaap:AdditionalPaidInCapitalMember2023-07-020000851205us-gaap:RetainedEarningsMember2023-07-020000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-0200008512052023-07-020000851205us-gaap:CommonStockMember2023-07-032023-10-010000851205us-gaap:AdditionalPaidInCapitalMember2023-07-032023-10-010000851205us-gaap:RetainedEarningsMember2023-07-032023-10-010000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-07-032023-10-010000851205us-gaap:CommonStockMember2023-10-010000851205us-gaap:AdditionalPaidInCapitalMember2023-10-010000851205us-gaap:RetainedEarningsMember2023-10-010000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-10-010000851205us-gaap:CommonStockMember2022-07-030000851205us-gaap:AdditionalPaidInCapitalMember2022-07-030000851205us-gaap:RetainedEarningsMember2022-07-030000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-0300008512052022-07-030000851205us-gaap:CommonStockMember2022-07-042022-10-020000851205us-gaap:AdditionalPaidInCapitalMember2022-07-042022-10-020000851205us-gaap:RetainedEarningsMember2022-07-042022-10-020000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-042022-10-020000851205us-gaap:CommonStockMember2022-10-020000851205us-gaap:AdditionalPaidInCapitalMember2022-10-020000851205us-gaap:RetainedEarningsMember2022-10-020000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-10-020000851205us-gaap:CommonStockMember2022-12-310000851205us-gaap:AdditionalPaidInCapitalMember2022-12-310000851205us-gaap:RetainedEarningsMember2022-12-310000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310000851205us-gaap:CommonStockMember2023-01-012023-10-010000851205us-gaap:AdditionalPaidInCapitalMember2023-01-012023-10-010000851205us-gaap:RetainedEarningsMember2023-01-012023-10-010000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-10-010000851205us-gaap:CommonStockMember2021-12-310000851205us-gaap:AdditionalPaidInCapitalMember2021-12-310000851205us-gaap:RetainedEarningsMember2021-12-310000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310000851205us-gaap:CommonStockMember2022-01-012022-10-020000851205us-gaap:AdditionalPaidInCapitalMember2022-01-012022-10-020000851205us-gaap:RetainedEarningsMember2022-01-012022-10-020000851205us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-10-020000851205us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:FairValueMeasurementsRecurringMemberus-gaap:FairValueInputsLevel3Member2023-10-010000851205us-gaap:FairValueInputsLevel1Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:CorporateBondSecuritiesMember2023-10-010000851205us-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:CorporateBondSecuritiesMember2023-10-010000851205us-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMemberus-gaap:CorporateBondSecuritiesMember2023-10-010000851205us-gaap:FairValueInputsLevel1Memberus-gaap:USTreasurySecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:USTreasurySecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:USTreasurySecuritiesMemberus-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:FairValueInputsLevel1Memberus-gaap:AssetBackedSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:AssetBackedSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:AssetBackedSecuritiesMemberus-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:FairValueInputsLevel1Memberus-gaap:SovereignDebtSecuritiesMemberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:SovereignDebtSecuritiesMemberus-gaap:FairValueInputsLevel2Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:SovereignDebtSecuritiesMemberus-gaap:FairValueInputsLevel3Memberus-gaap:FairValueMeasurementsRecurringMember2023-10-010000851205us-gaap:CorporateBondSecuritiesMember2023-10-010000851205us-gaap:CorporateBondSecuritiesMember2022-12-310000851205us-gaap:AssetBackedSecuritiesMember2023-10-010000851205us-gaap:AssetBackedSecuritiesMember2022-12-310000851205us-gaap:USTreasurySecuritiesMember2023-10-010000851205us-gaap:USTreasurySecuritiesMember2022-12-310000851205us-gaap:SovereignDebtMember2023-10-010000851205us-gaap:SovereignDebtMember2022-12-310000851205cgnx:AgencyBondsMember2023-10-010000851205cgnx:AgencyBondsMember2022-12-310000851205us-gaap:MunicipalBondsMember2023-10-010000851205us-gaap:MunicipalBondsMember2022-12-310000851205us-gaap:OtherCurrentAssetsMember2023-10-010000851205us-gaap:OtherCurrentAssetsMember2022-12-310000851205cgnx:CurrentAssetsMemberus-gaap:CorporateBondSecuritiesMember2023-10-010000851205cgnx:CurrentAssetsMemberus-gaap:AssetBackedSecuritiesMember2023-10-010000851205cgnx:CurrentAssetsMemberus-gaap:USTreasurySecuritiesMember2023-10-010000851205cgnx:CurrentAssetsMemberus-gaap:SovereignDebtSecuritiesMember2023-10-010000851205cgnx:NonCurrentAssetsMemberus-gaap:CorporateBondSecuritiesMember2023-10-010000851205cgnx:NonCurrentAssetsMemberus-gaap:USTreasurySecuritiesMember2023-10-010000851205cgnx:NonCurrentAssetsMemberus-gaap:AssetBackedSecuritiesMember2023-10-010000851205cgnx:NonCurrentAssetsMemberus-gaap:SovereignDebtSecuritiesMember2023-10-010000851205us-gaap:SovereignDebtSecuritiesMember2023-10-010000851205country:SG2023-06-30utr:sqftcgnx:lease_component0000851205country:SGcgnx:A88000SquareFootPremisesMember2023-06-300000851205country:SGcgnx:A88000SquareFootPremisesMember2023-06-012023-06-300000851205cgnx:A27000SquareFootPremisesMembercountry:SG2023-06-300000851205cgnx:A27000SquareFootPremisesMembercountry:SG2023-06-012023-06-300000851205cgnx:A27000SquareFootPremisesMembercountry:SG2023-10-010000851205cgnx:SouthboroughMassachusettsMember2021-12-310000851205cgnx:SouthboroughMassachusettsMember2021-12-012021-12-310000851205cgnx:SouthboroughMassachusettsMember2022-10-02xbrli:pure0000851205us-gaap:DevelopedTechnologyRightsMember2023-10-010000851205cgnx:CustomerContractsAndRelationshipsMember2023-10-010000851205us-gaap:OtherIntangibleAssetsMember2023-10-010000851205us-gaap:DevelopedTechnologyRightsMember2022-12-310000851205cgnx:CustomerContractsAndRelationshipsMember2022-12-310000851205us-gaap:OtherIntangibleAssetsMember2022-12-310000851205cgnx:DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember2023-10-010000851205us-gaap:NondesignatedMember2023-01-012023-10-010000851205us-gaap:ForeignExchangeForwardMember2023-10-01iso4217:JPY0000851205us-gaap:ForeignExchangeForwardMember2023-07-032023-10-010000851205currency:JPYus-gaap:NondesignatedMember2023-10-010000851205currency:JPYus-gaap:NondesignatedMember2022-12-310000851205currency:EURus-gaap:NondesignatedMember2023-10-01iso4217:EUR0000851205currency:EURus-gaap:NondesignatedMember2022-12-310000851205currency:SGDus-gaap:NondesignatedMember2023-10-01iso4217:SGD0000851205currency:SGDus-gaap:NondesignatedMember2022-12-310000851205currency:CNYus-gaap:NondesignatedMember2023-10-01iso4217:CNY0000851205currency:CNYus-gaap:NondesignatedMember2022-12-310000851205currency:MXNus-gaap:NondesignatedMember2023-10-01iso4217:MXN0000851205currency:MXNus-gaap:NondesignatedMember2022-12-310000851205currency:HUFus-gaap:NondesignatedMember2023-10-01iso4217:HUF0000851205currency:HUFus-gaap:NondesignatedMember2022-12-310000851205currency:GBPus-gaap:NondesignatedMember2023-10-01iso4217:GBP0000851205currency:GBPus-gaap:NondesignatedMember2022-12-310000851205currency:CADus-gaap:NondesignatedMember2023-10-01iso4217:CAD0000851205currency:CADus-gaap:NondesignatedMember2022-12-310000851205us-gaap:NondesignatedMembercurrency:CHF2023-10-01iso4217:CHF0000851205us-gaap:NondesignatedMembercurrency:CHF2022-12-310000851205us-gaap:NondesignatedMember2023-10-010000851205us-gaap:NondesignatedMember2022-12-310000851205us-gaap:NondesignatedMember2023-07-032023-10-010000851205us-gaap:NondesignatedMember2022-07-042022-10-020000851205us-gaap:NondesignatedMember2022-01-012022-10-020000851205srt:AmericasMember2023-07-032023-10-010000851205srt:AmericasMember2022-07-042022-10-020000851205srt:AmericasMember2023-01-012023-10-010000851205srt:AmericasMember2022-01-012022-10-020000851205srt:EuropeMember2023-07-032023-10-010000851205srt:EuropeMember2022-07-042022-10-020000851205srt:EuropeMember2023-01-012023-10-010000851205srt:EuropeMember2022-01-012022-10-020000851205country:CN2023-07-032023-10-010000851205country:CN2022-07-042022-10-020000851205country:CN2023-01-012023-10-010000851205country:CN2022-01-012022-10-020000851205cgnx:AsiaExcludingChinaMember2023-07-032023-10-010000851205cgnx:AsiaExcludingChinaMember2022-07-042022-10-020000851205cgnx:AsiaExcludingChinaMember2023-01-012023-10-010000851205cgnx:AsiaExcludingChinaMember2022-01-012022-10-020000851205cgnx:StandardProductsandServicesMember2023-07-032023-10-010000851205cgnx:StandardProductsandServicesMember2022-07-042022-10-020000851205cgnx:StandardProductsandServicesMember2023-01-012023-10-010000851205cgnx:StandardProductsandServicesMember2022-01-012022-10-020000851205cgnx:ApplicationSpecificCustomerSolutionsMember2023-07-032023-10-010000851205cgnx:ApplicationSpecificCustomerSolutionsMember2022-07-042022-10-020000851205cgnx:ApplicationSpecificCustomerSolutionsMember2023-01-012023-10-010000851205cgnx:ApplicationSpecificCustomerSolutionsMember2022-01-012022-10-020000851205cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember2023-05-030000851205cgnx:CognexCorporation2021And2007StockOptionAndIncentivePlansMember2023-05-030000851205cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember2023-05-042023-10-010000851205cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember2023-10-010000851205us-gaap:EmployeeStockOptionMember2023-10-010000851205cgnx:GeneralStockOptionPlanMembersrt:MinimumMember2023-01-012023-10-010000851205cgnx:GeneralStockOptionPlanMembersrt:MaximumMember2023-01-012023-10-010000851205us-gaap:EmployeeStockOptionMember2023-01-012023-10-010000851205us-gaap:RestrictedStockUnitsRSUMembersrt:MinimumMember2023-01-012023-10-010000851205us-gaap:RestrictedStockUnitsRSUMembersrt:MaximumMember2023-01-012023-10-010000851205us-gaap:PerformanceSharesMember2023-01-012023-10-010000851205us-gaap:RestrictedStockUnitsRSUMember2022-12-310000851205us-gaap:RestrictedStockUnitsRSUMember2023-01-012023-10-010000851205us-gaap:RestrictedStockUnitsRSUMember2023-10-010000851205us-gaap:RestrictedStockUnitsRSUMember2023-07-032023-10-010000851205us-gaap:RestrictedStockUnitsRSUMember2022-07-042022-10-020000851205us-gaap:RestrictedStockUnitsRSUMember2022-01-012022-10-020000851205us-gaap:PerformanceSharesMember2022-12-310000851205us-gaap:PerformanceSharesMember2023-10-010000851205us-gaap:PerformanceSharesMember2022-07-042022-10-020000851205us-gaap:PerformanceSharesMember2023-07-032023-10-010000851205us-gaap:PerformanceSharesMember2022-01-012022-10-02cgnx:group0000851205us-gaap:CostOfGoodsTotalMember2023-07-032023-10-010000851205us-gaap:CostOfGoodsTotalMember2022-07-042022-10-020000851205us-gaap:CostOfGoodsTotalMember2023-01-012023-10-010000851205us-gaap:CostOfGoodsTotalMember2022-01-012022-10-020000851205us-gaap:ResearchAndDevelopmentExpenseMember2023-07-032023-10-010000851205us-gaap:ResearchAndDevelopmentExpenseMember2022-07-042022-10-020000851205us-gaap:ResearchAndDevelopmentExpenseMember2023-01-012023-10-010000851205us-gaap:ResearchAndDevelopmentExpenseMember2022-01-012022-10-020000851205cgnx:SellingGeneralAndAdministrativeMember2023-07-032023-10-010000851205cgnx:SellingGeneralAndAdministrativeMember2022-07-042022-10-020000851205cgnx:SellingGeneralAndAdministrativeMember2023-01-012023-10-010000851205cgnx:SellingGeneralAndAdministrativeMember2022-01-012022-10-020000851205cgnx:RepurchaseProgramMarch2020Member2020-03-120000851205cgnx:RepurchaseProgramMarch2020Member2022-01-012022-10-020000851205cgnx:RepurchaseProgramMarch2022Member2022-03-030000851205cgnx:RepurchaseProgramMarch2022Member2022-01-012022-10-020000851205cgnx:RepurchaseProgramMarch2022Member2023-01-012023-10-010000851205cgnx:RepurchaseProgramMarch2022Member2023-10-010000851205us-gaap:ForeignCountryMemberus-gaap:RevenueCommissionersIrelandMember2023-01-012023-10-010000851205us-gaap:ForeignCountryMemberus-gaap:StateAdministrationOfTaxationChinaMember2023-01-012023-10-010000851205country:KPus-gaap:ForeignCountryMember2023-01-012023-10-010000851205us-gaap:DomesticCountryMember2023-01-012023-10-010000851205us-gaap:EmployeeStockOptionMember2023-07-032023-10-010000851205us-gaap:EmployeeStockOptionMember2023-01-012023-10-010000851205us-gaap:EmployeeStockOptionMember2022-07-042022-10-020000851205us-gaap:EmployeeStockOptionMember2022-01-012022-10-020000851205us-gaap:RestrictedStockMember2023-07-032023-10-010000851205us-gaap:RestrictedStockMember2023-01-012023-10-010000851205us-gaap:RestrictedStockMember2022-07-042022-10-020000851205us-gaap:RestrictedStockMember2022-01-012022-10-020000851205us-gaap:PerformanceSharesMember2023-07-032023-10-010000851205us-gaap:PerformanceSharesMember2023-01-012023-10-010000851205us-gaap:PerformanceSharesMember2022-07-042022-10-020000851205us-gaap:PerformanceSharesMember2022-01-012022-10-020000851205us-gaap:FireMember2022-01-012022-10-020000851205us-gaap:FireMember2022-07-042022-10-020000851205us-gaap:FireMember2022-10-020000851205us-gaap:FireMember2022-10-032022-12-310000851205us-gaap:FireMember2023-01-012023-10-010000851205us-gaap:FireMember2023-04-032023-07-020000851205us-gaap:FireMember2023-07-032023-10-010000851205us-gaap:FireMember2023-10-010000851205us-gaap:OneTimeTerminationBenefitsMembercgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2022-12-310000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMemberus-gaap:ContractTerminationMember2022-12-310000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2022-12-310000851205us-gaap:OneTimeTerminationBenefitsMembercgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2023-01-012023-10-010000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMemberus-gaap:ContractTerminationMember2023-01-012023-10-010000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2023-01-012023-10-010000851205us-gaap:OneTimeTerminationBenefitsMembercgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2023-10-010000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMemberus-gaap:ContractTerminationMember2023-10-010000851205cgnx:December2022Memberus-gaap:AccruedLiabilitiesMember2023-10-010000851205us-gaap:SubsequentEventMembercgnx:MoritexCorporationMember2023-10-182023-10-180000851205us-gaap:SubsequentEventMember2023-10-312023-10-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 October 1, 2023 or
Transition Report pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934 for the transition period from __________ to __________

Commission File Number 001-34218
COGNEX CORPORATION
(Exact name of registrant as specified in its charter)
Massachusetts 04-2713778
(State or other jurisdiction of
incorporation or organization)
 (I.R.S. Employer
Identification No.)

One Vision Drive
Natick, Massachusetts 01760-2059
(508) 650-3000
(Address, including zip code, and telephone number, including area code, of principal executive offices)


Securities registered pursuant to Section 12(b) of the Act:
Title of each classTrading Symbol(s)Name of each exchange on which registered
Common Stock, par value $.002 per shareCGNXThe NASDAQ Stock Market LLC


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

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

Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and "emerging growth company" in Rule 12b-2 of the Exchange Act (Check one):
Large accelerated filer  Accelerated filer
Non-accelerated filer  Smaller reporting company
Emerging growth company


If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.
Indicate by check mark whether the registrant is a shell company (as defined in Rule 12b-2 of the Exchange Act).    
 Yes   No  
As of October 1, 2023, there were 172,142,092 shares of Common Stock, $.002 par value per share, of the registrant outstanding.



INDEX
 
PART IFINANCIAL INFORMATION
Consolidated Statements of Operations for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022
Consolidated Statements of Comprehensive Income for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022
Consolidated Balance Sheets as of October 1, 2023 and December 31, 2022
Consolidated Statements of Cash Flows for the nine-month periods ended October 1, 2023 and October 2, 2022
Consolidated Statements of Shareholders’ Equity for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022

2


PART I: FINANCIAL INFORMATION
ITEM 1: FINANCIAL STATEMENTS

COGNEX CORPORATION
CONSOLIDATED STATEMENTS OF OPERATIONS
(In thousands, except per share amounts)
 
 Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
 (unaudited)(unaudited)
Revenue$197,241 $209,622 $640,877 $766,657 
Cost of revenue54,467 57,383 174,680 214,316 
Gross margin142,774 152,239 466,197 552,341 
Research, development, and engineering expenses32,580 33,954 104,707 103,999 
Selling, general, and administrative expenses82,307 75,371 248,767 236,156 
Loss (recovery) from fire (Note 17)(2,750)2,891 (5,250)20,294 
Operating income30,637 40,023 117,973 191,892 
Foreign currency gain (loss)(8,699)(1,880)(9,910)(4,367)
Investment income4,891 1,416 12,573 4,389 
Other income (expense)173 (214)358 (450)
Income before income tax expense27,002 39,345 120,994 191,464 
Income tax expense8,086 5,365 18,989 31,250 
Net income$18,916 $33,980 $102,005 $160,214 
Net income per weighted-average common and common-equivalent share:
Basic$0.11 $0.20 $0.59 $0.92 
Diluted$0.11 $0.19 $0.59 $0.91 
Weighted-average common and common-equivalent shares outstanding:
Basic172,169 173,256 172,408 173,640 
Diluted173,354 174,327 173,659 175,233 
Cash dividends per common share$0.070 $0.065 $0.210 $0.195 













 
The accompanying notes are an integral part of these consolidated financial statements.
3


COGNEX CORPORATION
CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME
(In thousands)
 
 Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
 (unaudited)(unaudited)
Net income$18,916 $33,980 $102,005 $160,214 
Other comprehensive income (loss), net of tax:
Available-for-sale investments:
Net unrealized gain (loss), net of tax of $707 and $(1,564) in the three-month periods, and net of tax of $1,981 and $(6,298) in the nine-month periods, respectively
738 (5,315)4,458 (21,185)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations624 79 624 103 
Net change related to available-for-sale investments1,362 (5,236)5,082 (21,082)
Foreign currency translation adjustments:
Foreign currency translation adjustments(2,603)(7,352)(5,828)(13,425)
Net change related to foreign currency translation adjustments(2,603)(7,352)(5,828)(13,425)
Other comprehensive income (loss), net of tax(1,241)(12,588)(746)(34,507)
Total comprehensive income$17,675 $21,392 $101,259 $125,707 



















The accompanying notes are an integral part of these consolidated financial statements.
4


COGNEX CORPORATION
CONSOLIDATED BALANCE SHEETS
(In thousands)
 
October 1, 2023December 31, 2022
 (unaudited) 
ASSETS
Current assets:
Cash and cash equivalents$395,501 $181,374 
Current investments, amortized cost of $120,831 and $223,545 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022
117,147 218,759 
Accounts receivable, allowance for credit losses of $580 and $730 in 2023 and 2022, respectively
130,542 125,417 
Unbilled revenue1,588 2,179 
Inventories133,866 122,480 
Prepaid expenses and other current assets68,347 67,490 
Total current assets846,991 717,699 
Non-current investments, amortized cost of $349,060 and $476,148 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022
332,991 454,117 
Property, plant, and equipment, net82,965 79,714 
Operating lease assets66,760 37,682 
Goodwill241,042 242,630 
Intangible assets, net9,986 12,414 
Deferred income taxes403,013 407,241 
Other assets6,151 6,643 
Total assets$1,989,899 $1,958,140 
LIABILITIES AND SHAREHOLDERS’ EQUITY
Current liabilities:
Accounts payable$23,053 $27,103 
Accrued expenses79,121 93,235 
Accrued income taxes19,302 18,129 
Deferred revenue and customer deposits40,246 40,787 
Operating lease liabilities7,982 8,454 
Total current liabilities169,704 187,708 
Non-current operating lease liabilities60,450 31,298 
Deferred income taxes233,360 249,961 
Reserve for income taxes19,450 15,866 
Non-current accrued income taxes18,337 33,008 
Other liabilities 1,905 
Total liabilities501,301 519,746 
Commitments and contingencies (Note 10)
Shareholders’ equity:
Preferred stock, $.01 par value – Authorized: 400 shares in 2023 and 2022, respectively; no shares issued and outstanding
  
Common stock, $.002 par value – Authorized: 300,000 shares in 2023 and 2022, respectively; issued and outstanding: 172,142 and 172,631 shares in 2023 and 2022, respectively
344 345 
Additional paid-in capital1,023,960 979,167 
Retained earnings534,337 528,179 
Accumulated other comprehensive loss, net of tax(70,043)(69,297)
Total shareholders’ equity1,488,598 1,438,394 
Total liabilities and shareholders' equity$1,989,899 $1,958,140 

The accompanying notes are an integral part of these consolidated financial statements.
5


COGNEX CORPORATION
CONSOLIDATED STATEMENTS OF CASH FLOWS
(In thousands)
 Nine-months Ended
October 1, 2023October 2, 2022
 (unaudited)
Cash flows from operating activities:
Net income$102,005 $160,214 
Adjustments to reconcile net income to net cash provided by (used in) operating activities:
Stock-based compensation expense41,518 41,419 
Depreciation of property, plant, and equipment12,557 12,176 
(Gain) loss on disposal of property, plant, and equipment(2)12 
Amortization of intangible assets2,428 2,468 
Excess and obsolete inventory charges1,703 2,728 
Non-cash impact of write-offs related to fire (Note 17) 45,827 
Amortization of discounts or premiums on investments1,347 3,976 
Realized (gain) loss on sale of investments624 103 
Change in deferred income taxes(14,691)(14,799)
Change in operating assets and liabilities:
Accounts receivable(6,488)31,018 
Unbilled revenue534 1,760 
Inventories(12,954)(35,815)
Prepaid expenses and other current assets(2,007)(46,817)
Accounts payable(3,986)(21,577)
Accrued expenses(13,214)(23,813)
Accrued income taxes(13,513)(6,644)
Deferred revenue and customer deposits(151)20,882 
Other2,715 4,031 
Net cash provided by (used in) operating activities98,425 177,149 
Cash flows from investing activities:
Purchases of investments(174,330)(77,760)
Maturities and sales of investments402,160 215,876 
Purchases of property, plant, and equipment(16,062)(15,605)
Net cash provided by (used in) investing activities211,768 122,511 
Cash flows from financing activities:
Net payments from issuance of common stock under stock plans3,276 4,225 
Repurchase of common stock(59,640)(178,387)
Payment of dividends(36,209)(33,837)
Net cash provided by (used in) financing activities(92,573)(207,999)
Effect of foreign exchange rate changes on cash and cash equivalents(3,493)(11,818)
Net change in cash and cash equivalents214,127 79,843 
Cash and cash equivalents at beginning of period181,374 186,161 
Cash and cash equivalents at end of period$395,501 $266,004 










The accompanying notes are an integral part of these consolidated financial statements.
6


COGNEX CORPORATION
CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY
(In thousands)
 Common StockAdditional
Paid-in Capital
Retained EarningsAccumulated
Other
Comprehensive
Loss
Total
Shareholders’
Equity
 SharesPar Value
Balance as of July 2, 2023172,293 $345 $1,010,973 $537,947 $(68,802)$1,480,463 
Net issuance of common stock under stock plans40  622 — — 622 
Repurchase of common stock(191)(1)— (10,477)— (10,478)
Stock-based compensation expense— — 12,365 — — 12,365 
Payment of dividends ($0.070 per common share)
— — — (12,049)— (12,049)
Net income— — — 18,916 — 18,916 
Net unrealized gain (loss) on available-for-sale investments, net of tax of $707
— — — — 738 738 
Reclassification of net realized (gain) loss on the sale of available-for-sale investments— — — — 624 624 
Foreign currency translation adjustment— — — — (2,603)(2,603)
Balance as of October 1, 2023 (unaudited)
172,142 $344 $1,023,960 $534,337 $(70,043)$1,488,598 

 Common StockAdditional
Paid-in Capital
Retained EarningsAccumulated
Other
Comprehensive
Loss
Total
Shareholders’
Equity
 SharesPar Value
Balance as of July 3, 2022173,397 $347 $947,269 $512,230 $(69,861)$1,389,985 
Net issuance of common stock under stock plans73  (189)— — (189)
Repurchase of common stock(540)(1)— (24,069)— (24,070)
Stock-based compensation expense— — 13,366 — — 13,366 
Payment of dividends ($0.065 per common share)
— — — (11,264)— (11,264)
Net income— — — 33,980 — 33,980 
Net unrealized gain (loss) on available-for-sale investments, net of tax of $(1,564)
— — — — (5,315)(5,315)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments— — — — 79 79 
Foreign currency translation adjustment— — — — (7,352)(7,352)
Balance as of October 2, 2022 (unaudited)
172,930 $346 $960,446 $510,877 $(82,449)$1,389,220 










The accompanying notes are an integral part of these consolidated financial statements.
7


COGNEX CORPORATION
CONSOLIDATED STATEMENTS OF SHAREHOLDERS’ EQUITY
(In thousands)
 Common StockAdditional
Paid-in Capital
Retained EarningsAccumulated
Other
Comprehensive
Loss
Total
Shareholders’
Equity
 SharesPar Value
Balance as of December 31, 2022
172,631 $345 $979,167 $528,179 $(69,297)$1,438,394 
Net issuance of common stock under stock plans668 1 3,275 — — 3,276 
Repurchase of common stock(1,157)(2)— (59,638)— (59,640)
Stock-based compensation expense— — 41,518 — — 41,518 
Payment of dividends ($0.210 per common share)
— — — (36,209)— (36,209)
Net income— — — 102,005 — 102,005 
Net unrealized gain (loss) on available-for-sale investments, net of tax of $1,981
— — — — 4,458 4,458 
Reclassification of net realized (gain) loss on the sale of available-for-sale investments— — — — 624 624 
Foreign currency translation adjustment— — — — (5,828)(5,828)
Balance as of October 1, 2023 (unaudited)
172,142 $344 $1,023,960 $534,337 $(70,043)$1,488,598 

 Common StockAdditional
Paid-in Capital
Retained EarningsAccumulated
Other
Comprehensive
Loss
Total
Shareholders’
Equity
 SharesPar Value
Balance as of December 31, 2021
175,481 $351 $914,802 $562,882 $(47,942)$1,430,093 
Net issuance of common stock under stock plans256  4,225 — — 4,225 
Repurchase of common stock(2,807)(5)— (178,382)— (178,387)
Stock-based compensation expense— — 41,419 — — 41,419 
Payment of dividends ($0.195 per common share)
— — — (33,837)— (33,837)
Net income— — — 160,214 — 160,214 
Net unrealized gain (loss) on available-for-sale investments, net of tax of $(6,298)
— — — — (21,185)(21,185)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments— — — — 103 103 
Foreign currency translation adjustment— — — — (13,425)(13,425)
Balance as of October 2, 2022 (unaudited)
172,930 $346 $960,446 $510,877 $(82,449)$1,389,220 










The accompanying notes are an integral part of these consolidated financial statements.
8


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)

NOTE 1: Summary of Significant Accounting Policies
As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form 10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP). Reference should be made to the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 for a full description of other significant accounting policies.
In the opinion of the management of Cognex Corporation (the "Company"), the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments, adjustments related to losses and recoveries from the fire (Note 17), and financial statement reclassifications necessary to present fairly the Company’s financial position as of October 1, 2023, and the results of its operations for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022, and changes in shareholders’ equity, comprehensive income, and cash flows for the periods presented.
The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended October 1, 2023 are not necessarily indicative of the results to be expected for the full year.
NOTE 2: New Pronouncements
Accounting Standards Update (ASU) 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting", (ASU) 2021-01, "Reference Rate Reform (Topic 848): Scope", and Accounting Standards Update (ASU) 2022-06, "Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848"
The amendments in these ASUs apply to all entities that have contracts, hedging relationships, and other transactions that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. Together, the ASUs provide optional expedients and exceptions for applying generally accepted accounting principles (GAAP) to contracts, hedging relationships, and other transactions affected by reference rate reform if certain criteria are met. The expedients and exceptions provided by the amendments do not apply to contract modifications made and hedging relationships entered into or evaluated after December 31, 2024, except for hedging relationships existing as of December 31, 2024 that an entity has elected certain optional expedients for and that are retained through the end of the hedging relationship. The amendments in these ASUs are effective for all entities as of March 12, 2020 through December 31, 2024. Management adopted Topic 848 on January 1, 2023, and now uses the Secured Overnight Financing Rate (SOFR). The adoption did not have a material impact on the Company's financial statements and disclosures.

9


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 3: Fair Value Measurements
Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis
The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of October 1, 2023 (in thousands):
Quoted Prices in
Active Markets
for Identical
Assets (Level 1)
Significant Other
Observable
Inputs (Level 2)
Unobservable Inputs (Level 3)
Assets:
Money market instruments$241,716 $ $ 
Corporate bonds 349,405  
Treasury bills 61,742  
Asset-backed securities 37,051  
Sovereign bonds 1,940  
Economic hedge forward contracts 196  
Liabilities:
Economic hedge forward contracts 128  
The Company’s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1.
The Company’s debt securities and forward contracts are reported at fair value based on model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2. Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service. For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data. They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations. The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency. The market participants are generally large commercial banks.
Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis
Non-financial assets, such as property, plant and equipment, operating lease assets, goodwill, and intangible assets, are required to be measured at fair value only when an impairment loss is recognized. The Company did not record impairment charges related to non-financial assets during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.
10


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 4: Cash, Cash Equivalents, and Investments
Cash, cash equivalents, and investments consisted of the following (in thousands):
October 1, 2023December 31, 2022
Cash$153,785 $180,959 
Money market instruments241,716 415 
Cash and cash equivalents395,501 181,374 
Corporate bonds110,627 164,055 
Asset-backed securities3,084 26,890 
Treasury bills2,457 11,332 
Sovereign bonds979  
Agency bonds 15,858 
Municipal bonds 624 
Current investments117,147 218,759 
Corporate bonds238,778 374,440 
Treasury bills59,285 44,214 
Asset-backed securities33,967 33,539 
Sovereign bonds961 1,924 
Non-current investments332,991 454,117 
$845,639 $854,250 
Corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; treasury bills consist of debt securities issued by the U.S. government; sovereign bonds consist of direct debt issued by foreign governments; agency bonds consist of domestic or foreign obligations of government agencies and government-sponsored enterprises that have government backing; and municipal bonds consist of debt securities issued by state and local government entities. All of the Company's securities as of October 1, 2023 and December 31, 2022 were denominated in U.S. Dollars.
Accrued interest receivable is recorded in "Prepaid expenses and other current assets" on the Consolidated Balance Sheets and amounted to $4,094,000 and $3,620,000 as of October 1, 2023 and December 31, 2022, respectively.
The following table summarizes the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
Amortized
Cost
Gross
Unrealized
Gains
Gross
Unrealized
Losses
Fair Value
Current:
Corporate bonds$114,188 $ $(3,561)$110,627 
Asset-backed securities3,128  (44)3,084 
Treasury bills2,498  (41)2,457 
Sovereign bonds1,017  (38)979 
Non-current:
Corporate bonds251,635 9 (12,866)238,778 
Treasury bills60,871  (1,586)59,285 
Asset-backed securities35,512  (1,545)33,967 
Sovereign bonds1,042  (81)961 
$469,891 $9 $(19,762)$450,138 
11


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The following table summarizes the Company’s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of October 1, 2023 (in thousands):
 Unrealized Loss Position For: 
 Less than 12 Months12 Months or GreaterTotal
 Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Corporate bonds$103,100 $(2,900)$244,535 $(13,527)$347,635 $(16,427)
Treasury bills56,878 (1,492)4,864 (135)61,742 (1,627)
Asset-backed securities32,425 (1,465)4,626 (124)37,051 (1,589)
Sovereign bonds  1,940 (119)1,940 (119)
$192,403 $(5,857)$255,965 $(13,905)$448,368 $(19,762)
Management monitors debt securities that are in an unrealized loss position to determine whether a loss exists related to the credit quality of the issuer. When developing an estimate of expected credit losses, management considers all relevant information including historical experience, current conditions, and reasonable forecasts of expected future cash flows. Based on this evaluation, no allowance for credit losses on debt securities was recorded as of October 1, 2023 or December 31, 2022. There was no activity recorded in the allowance for credit losses during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.
The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Gross realized gains$109 $ $109 $133 
Gross realized losses(733)(79)(733)(236)
Net realized gains (losses)$(624)$(79)$(624)$(103)
Realized gains and losses are included in "Investment income" on the Consolidated Statements of Operations. Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, were recorded in shareholders’ equity as accumulated other comprehensive income (loss).
The following table presents the effective maturity dates of the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
<1 year1-2 Years2-3 Years3-4 Years4-5 Years5-8 YearsTotal
Corporate bonds$110,627 $95,497 $65,409 $34,878 $42,539 $455 $349,405 
Treasury bills2,457 5,306 15,016 21,842 17,121  61,742 
Asset-backed securities3,084 12,722 10,584 3,978  6,683 37,051 
Sovereign bonds979  961    1,940 
$117,147 $113,525 $91,970 $60,698 $59,660 $7,138 $450,138 

12


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 5: Inventories
Inventories consisted of the following (in thousands):
October 1, 2023December 31, 2022
Raw materials$80,091 $71,720 
Work-in-process1,712 906 
Finished goods52,063 49,854 
$133,866 $122,480 
NOTE 6: Leases
The Company's leases are primarily leased properties across different worldwide locations where the Company conducts its operations. All of these leases are classified as operating leases. Certain leases may contain options to extend or terminate the lease at the Company's sole discretion.
As of October 1, 2023, there were no options to terminate and twenty-nine options to extend that were accounted for in the determination of the lease term for outstanding leases. Certain leases contain leasehold improvement incentives, retirement obligations, escalating clauses, rent holidays, and variable payments tied to a consumer price index. There were no restrictions or covenants for outstanding leases as of October 1, 2023.
The total operating lease expense for the three-month and nine-month periods ended October 1, 2023 was $5,512,000 and $8,151,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 1, 2023 were $5,168,000 and $7,532,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 1, 2023 was $132,000 and $292,000, respectively.
The total operating lease expense for the three-month and nine-month periods ended October 2, 2022 was $2,255,000 and $6,699,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 2, 2022 were $2,161,000 and $6,467,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 2, 2022 was $35,000 and $110,000, respectively.
Future operating lease cash payments are as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$2,510 
202411,580 
20259,677 
20267,799 
20277,231 
20286,992 
Thereafter46,421 
$92,210 
The discounted present value of the future lease cash payments resulted in a total lease liability of $68,432,000 and $39,752,000 as of October 1, 2023 and December 31, 2022, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of October 1, 2023.
13


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
In June 2023, the Company entered into a lease for a 115,000 square-foot building in Singapore to serve as a new distribution center for customers in Asia. The lease contains two components, including a 88,000 square-foot premises with a term of ten years, six months. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. This lease component commenced during the second quarter of 2023, and therefore the Company recorded approximately $29,639,000, which reflects an estimated extension period of five years, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date. The second component of this Singapore lease is for a 27,000 square-foot premises with a term of eight years. The commencement date for this lease component is in the fourth quarter of 2025, and therefore it was not yet recorded on the Consolidated Balance Sheets, nor did it create any significant rights and obligations as of October 1, 2023. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. Future payment obligations associated with this lease component total $13,231,000, none of which is payable in 2023 and which reflects an estimated extension period of five years. Future payment obligations related to this lease component are not included in the future operating lease cash payments table above.
In December 2021, the Company entered into a lease for a 65,000 square-foot building in Southborough, Massachusetts for a term of ten years to serve as a new distribution center for customers in the Americas. The Company has the right and option to extend the term of this lease for an additional period of five years, commencing upon the expiration of the original ten-year term. This lease commenced during the first quarter of 2022, and therefore the Company recorded approximately $9,271,000, which does not reflect an estimated extension period, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date.
The weighted-average discount rate was 5.4% and 3.3% for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively. The weighted-average remaining lease term was 10.8 and 7.8 years for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively.
NOTE 7: Goodwill
The changes in the carrying value of goodwill were as follows (in thousands):
Balance as of December 31, 2022$242,630 
  Foreign exchange rate changes(1,588)
Balance as of October 1, 2023$241,042 
NOTE 8: Intangible Assets
Amortized intangible assets consisted of the following (in thousands):
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(19,590)$8,427 
Customer relationships5,838 (4,400)1,438 
Non-compete agreements340 (219)121 
Balance as of October 1, 2023$34,195 $(24,209)$9,986 
 Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(17,744)$10,273 
Customer relationships5,838 (3,860)1,978 
Non-compete agreements340 (177)163 
Balance as of December 31, 2022$34,195 $(21,781)$12,414 
14


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
As of October 1, 2023, estimated future amortization expense related to intangible assets was as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$709 
20242,623 
20252,300 
20261,995 
20271,273 
2028543 
Thereafter543 
$9,986 
NOTE 9: Warranty Obligations
The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims. Obligations may also be recorded subsequent to the time of sale whenever specific events or changes in circumstances impacting product quality become known that would not have been taken into account using historical data. While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company’s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure. An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in “Accrued expenses” on the Consolidated Balance Sheets.
The changes in the warranty obligation were as follows (in thousands):
Balance as of December 31, 2022$4,375 
Provisions for warranties issued during the period1,722 
Fulfillment of warranty obligations(2,292)
Balance as of October 1, 2023$3,805 
NOTE 10: Commitments and Contingencies
As of October 1, 2023, the Company had outstanding purchase orders totaling $70,635,000 to procure inventory from various vendors. Certain of these purchase orders may be canceled by the Company, subject to cancellation penalties. These purchase commitments relate primarily to expected sales in the next twelve months.
A significant portion of the Company's outstanding inventory purchase orders as of October 1, 2023, as well as additional preauthorized commitments to procure strategic components based on the Company's expected customer demand, are placed with the Company's primary contract manufacturer for the Company's assembled products. The Company has the obligation to purchase any non-cancelable and non-returnable components that have been purchased by the contract manufacturer with the Company's preauthorization, when these components have not been consumed within the period defined in the terms of the Company's agreement with this contract manufacturer. While the Company typically expects such purchased components to be used in future production of Cognex finished goods, these components are considered in the Company's reserve estimate for excess and obsolete inventory. Furthermore, the Company accrues for losses on commitments for the future purchase of non-cancelable and non-returnable components from this contract manufacturer at the time that circumstances, such as changes in demand, indicate that the value of the components may not be recoverable, the loss is probable, and management has the ability to reasonably estimate the amount of the loss.
Various claims and legal proceedings generally incidental to the normal course of business are pending or threatened on behalf of or against the Company. While we cannot predict the outcome of these matters, we believe that any liability arising from them will not have a material adverse effect on our financial position, liquidity, or results of operations.
15


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 11: Derivative Instruments
The Company’s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates. The Company enters into economic hedges utilizing foreign currency forward contracts with maturities that do not exceed approximately three months to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables. The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged. These economic hedges are not designated as hedging instruments for hedge accounting treatment.
Additionally, during the three-month period ended October 1, 2023, the Company entered into a foreign currency forward contract to exchange U.S. Dollars for ¥40,000,000,000 to hedge the Japanese Yen purchase price of the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements). Upon the settlement of this contract, the Company recorded a foreign currency loss of $8,456,000, which was recorded in "Foreign currency gain (loss)" on the Consolidated Statements of Operations for the three-month period ended October 1, 2023.
The Company had the following outstanding forward contracts (in thousands):
October 1, 2023December 31, 2022
CurrencyNotional
Value
USD
Equivalent
Notional
Value
USD
Equivalent
Derivatives Not Designated as Hedging Instruments:
Japanese Yen40,600,000 $272,499 700,000 $5,281 
Euro37,500 39,741 60,000 64,174 
Singapore Dollar40,500 29,747   
Chinese Renminbi200,000 27,445 55,000 7,619 
Mexican Peso100,000 5,722 185,000 9,480 
Hungarian Forint1,930,000 5,221 1,590,000 4,238 
British Pound3,230 3,956 3,445 4,161 
Canadian Dollar1,650 1,225 1,730 1,278 
Swiss Franc  1,120 1,218 

Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):
 Asset DerivativesLiability Derivatives
 BalanceFair ValueBalanceFair Value
 Sheet
Location
October 1, 2023December 31, 2022Sheet
Location
October 1, 2023December 31, 2022
Derivatives Not Designated as Hedging Instruments:
Economic hedge forward contractsPrepaid expenses and other current assets$196 $27 Accrued expenses$128 $479 

16


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):
Asset DerivativesLiability Derivatives
October 1, 2023December 31, 2022October 1, 2023December 31, 2022
Gross amounts of recognized assets$196 $27 Gross amounts of recognized liabilities$128 $479 
Gross amounts offset  Gross amounts offset  
Net amount of assets presented$196 $27 Net amount of liabilities presented$128 $479 

Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):
 Location in Financial StatementsThree-months Ended
Nine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Derivatives Not Designated as Hedging Instruments:
Gains (losses) recognized in current operationsForeign currency gain (loss)$(7,527)$7,161 $(8,139)$15,091 
17


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 12: Revenue Recognition
The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Americas$80,156 $65,847 $243,067 $284,057 
Europe51,827 48,930 168,529 173,561 
Greater China34,485 66,460 139,837 193,481 
Other Asia30,773 28,385 89,444 115,558 
$197,241 $209,622 $640,877 $766,657 

The following table summarizes disaggregated revenue information by revenue type (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Standard products and services$170,104 $158,244 $555,831 $637,598 
Application-specific customer solutions27,137 51,378 85,046 129,059 
$197,241 $209,622 $640,877 $766,657 
Costs to Fulfill a Contract
Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to $17,827,000 and $14,578,000 as of October 1, 2023 and December 31, 2022, respectively.
Accounts Receivable, Contract Assets, and Contract Liabilities
Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value. The Company maintains an allowance against its accounts receivable for credit losses. Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts. Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.
The following table summarizes the allowance for credit losses activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$730 
Increases to the allowance for credit losses350 
Write-offs, net of recoveries(500)
Foreign exchange rate changes 
Balance as of October 1, 2023$580 
18


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$40,787 
Deferral of revenue billed in the current period, net of recognition28,249 
Recognition of revenue deferred in prior period(18,809)
Returned customer deposit(9,205)
Foreign exchange rate changes(776)
Balance as of October 1, 2023$40,246 
As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.
NOTE 13: Stock-Based Compensation Expense
Stock Plans
The Company’s stock-based awards that result in compensation expense consist of stock options, restricted stock units ("RSUs"), and performance restricted stock units ("PRSUs"). In May 2023, the shareholders of the Company approved the Cognex Corporation 2023 Stock Option and Incentive Plan (the “2023 Plan”). The 2023 Plan permits awards of stock options (both incentive and non-qualified options), stock appreciation rights, RSUs, and PRSUs. Up to 8,100,000 shares of common stock (subject to adjustment in the event of stock splits and other similar events) may be issued pursuant to awards granted under the 2023 Plan. In connection with the approval of the 2023 Plan, no further awards will be made under the Cognex Corporation 2001 General Stock Option Plan, as amended and restated (the “2001 Plan”), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the “2007 Plan”). With the approval of the 2023 Plan, the 10,610,800 shares of common stock subject to awards granted under the 2001 Plan and the 2007 Plan that were outstanding as of May 3, 2023 may become eligible for issuance under the 2023 Plan if such awards are forfeited, cancelled or otherwise terminated (other than by exercise) (the “Carryover Shares”). As of October 1, 2023, forfeits, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in 214,024 Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to 8,314,024.
As of October 1, 2023, the Company had 8,035,000 shares available for grant under its stock plans. Stock options are granted with an exercise price equal to the market value of the Company’s common stock at the grant date and generally vest over four or five years based upon continuous service and expire ten years from the grant date. RSUs generally vest upon three or four years of continuous employment or incrementally over such three or four-year periods. PRSUs generally vest upon three years of continuous employment and achievement of performance criteria established by the Compensation Committee of our Board of Directors on or prior to the grant date. Participants are not entitled to dividends on stock options, RSUs, or PRSUs.
19


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
Stock Options
The following table summarizes the Company’s stock option activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-
Average
Exercise
Price
Weighted-
Average
Remaining
Contractual
Term (in years)
Aggregate
Intrinsic
Value
(in thousands)
Outstanding as of December 31, 2022
8,467 $51.56 
Granted1,395 47.49 
Exercised(325)33.87 
Forfeited or expired(562)57.71 
Outstanding as of October 1, 2023
8,975 $51.19 6.13$17,396 
Exercisable as of October 1, 2023
5,182 $47.67 4.67$17,378 
Options vested or expected to vest as of October 1, 2023 (1)8,493 $51.01 5.98$17,396 
 (1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future. Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.
The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Risk-free rate4.1 %2.7 %4.0 %2.1 %
Expected dividend yield0.57 %0.54 %0.59 %0.44 %
Expected volatility39 %37 %39 %37 %
Expected term (in years)5.96.44.95.5
Risk-free rate
The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.
Expected dividend yield
Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company’s Board of Directors and dividing that result by the closing stock price on the grant date. 
Expected volatility
The expected volatility was based upon a combination of historical volatility of the Company’s common stock over the contractual term of the option and implied volatility for traded options of the Company’s stock.
Expected term
The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.
The weighted-average grant-date fair values of stock options granted during the three-month and nine-month periods ended October 1, 2023 were $20.55 and $18.11, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $18.81 and $21.40, respectively.
The total intrinsic values of stock options exercised for the three-month and nine-month periods ended October 1, 2023 were $557,000 and $6,119,000, respectively, and for the three-month and nine-month periods ended
20


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
October 2, 2022 were $516,000 and $3,615,000, respectively. The total fair values of stock options vested for the three-month and nine-month periods ended October 1, 2023 were $962,000 and $33,035,000, respectively, and for the three-month and nine-month periods ended October 2, 2022 were $1,159,000 and $27,882,000, respectively.
Restricted Stock Units (RSUs)
The following table summarizes the Company's RSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
1,269 $61.74 
Granted748 46.78 
Vested(500)59.43 
Forfeited or expired(86)60.65 
Nonvested as of October 1, 2023
1,431 $54.79 
The fair value of RSUs is determined based on the observable market price of the Company's stock on the grant date less the present value of expected future dividends. The weighted-average grant-date fair values of RSUs granted during the three-month and nine-month periods ended October 1, 2023 were $46.17 and $46.78, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $47.12 and $58.44, respectively. There were 18,000 and 500,000 RSUs that vested during the three-month and nine-month periods ended October 1, 2023, respectively, and 67,000 and 141,000 that vested during the three-month and nine-month periods ended October 2, 2022, respectively.
Performance Restricted Stock Units (PRSUs)
The following table summarizes the Company's PRSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
33 $62.49 
Granted46 44.86 
Vested  
Forfeited or expired  
Nonvested as of October 1, 2023
79 $52.23 
The fair value of PRSUs is calculated using the Monte Carlo simulation model to estimate the probability of satisfying the service and market conditions stipulated in the award grant. There were no PRSUs granted during the three-month periods ended October 1, 2023 and October 2, 2022. There were 46,000 and 33,000 PRSUs granted during the nine-month periods ended October 1, 2023 and October 2, 2022, respectively. No PRSUs vested during the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.
Stock-Based Compensation Expense
The Company stratifies its employee population into three groups: one consisting of the CEO, one consisting of senior management, and another consisting of all other employees. The Company currently applies an estimated annual forfeiture rate of 0% to all stock-based awards for the CEO, 8% to all stock-based awards for senior management, and a rate of 13% for all other employees. Each year during the first quarter, the Company revises its forfeiture rate based on updated estimates of employee turnover. This resulted in a decrease to compensation expense of $234,000 in 2023 and an increase to compensation expense of $1,536,000 in 2022.
As of October 1, 2023, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $68,509,000, which is expected to be recognized over a weighted-average period of 2.0 years.
21


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 1, 2023 were $12,365,000 and $1,971,000, respectively, and for the nine-month period ended October 1, 2023 were $41,518,000 and $6,053,000, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 2, 2022 were $13,366,000 and $2,133,000, respectively, and for the nine-month period ended October 2, 2022 were $41,419,000 and $6,496,000, respectively. No compensation expense was capitalized as of October 1, 2023 or December 31, 2022.
The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Cost of revenue$435 $468 $1,497 $1,513 
Research, development, and engineering3,459 4,209 12,657 12,508 
Selling, general, and administrative8,471 8,689 27,364 27,398 
$12,365 $13,366 $41,518 $41,419 
NOTE 14: Stock Repurchase Program
On March 12, 2020, the Company's Board of Directors authorized the repurchase of $200,000,000 of the Company's common stock. Under this March 2020 program, in addition to repurchases made in prior years, the Company repurchased 1,677,000 shares, and an additional 5,000 shares that were repurchased in 2021 and settled in 2022, at a cost of $117,000,000 during the nine-month period ended October 2, 2022, which completed purchases under this program. On March 3, 2022, the Company's Board of Directors authorized the repurchase of an additional $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 1,125,000 shares at a total cost of $61,387,000 during the nine-month period ended October 2, 2022. Under this same March 2022 program, in addition to repurchases made in the prior year, the Company repurchased 1,157,000 shares at a total cost of $59,640,000 during the nine-month period ended October 1, 2023, leaving a remaining balance of $353,046,000 as of October 1, 2023. The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock awards, stock price, share availability, and cash requirements. The Company is authorized to make repurchases of its common stock through open market purchases, pursuant to Rule 10b5-1 trading plans, or in privately negotiated transactions.
22


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 15: Income Taxes
The Company's effective tax rate was 30% and 16% for the three-month and nine-month periods ended October 1, 2023, respectively, and 14% and 16% for the three-month and nine-month periods ended October 2, 2022, respectively.
The Company has defined its major tax jurisdictions as the United States, Ireland, China, and Korea, and within the United States, Massachusetts. The statutory tax rate is 12.5% in Ireland, 25% in China, and 22% in Korea compared to the U.S. federal statutory corporate tax rate of 21%. These foreign tax rate differences resulted in a net decrease to the effective tax rate for both the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.
The Company recorded a net discrete tax expense totaling $4,035,000 and $840,000 for the three-month and nine-month periods ended October 1, 2023, respectively and a net discrete tax benefit totaling $2,000 and a net discrete tax expense totaling $3,984,000 for the same periods in 2022.
Discrete tax items for the nine-month period ended October 1, 2023 included (1) a net decrease in tax expense of $3,043,000 due primarily to the release of tax reserves on state tax credits and foreign audit settlements; (2) a decrease in tax expense of $2,198,000 for adjustments to certain deferred tax assets; (3) an increase in tax expense of $2,178,000 for an adjustment related to deferred state taxes due to a reduction in the Company's blended state rate; (4) a net increase in tax expense of $2,134,000 for return-to-provision adjustments; and (5) an increase in tax expense of $1,769,000 related to stock-based compensation.
Discrete tax items for the nine-month period ended October 2, 2022 included (1) a net increase in tax expense of $3,822,000 primarily for return-to-provision adjustments; (2) a net decrease in tax expense of $2,461,000 arising primarily from audit settlements and releases of reserves; (3) an increase in tax expense of $2,316,000 to establish a reserve against certain deferred tax assets; and (4) an increase in tax expense of $307,000 related to stock-based compensation;
The Company’s reserve for income taxes, including gross interest and penalties, was $19,450,000 as of October 1, 2023, which was classified as a non-current liability. If the Company’s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.
Within the United States, the tax years 2019 through 2022 remain open to examination by the IRS, and 2018 through 2022 remain open to examination by various state tax authorities. The tax years 2017 through 2022 remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates.
NOTE 16: Weighted-Average Shares
Weighted-average shares were calculated as follows (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Basic weighted-average common shares outstanding172,169 173,256 172,408 173,640 
Effect of dilutive equity awards1,185 1,071 1,251 1,593 
Weighted-average common and common-equivalent shares outstanding173,354 174,327 173,659 175,233 
Stock options to purchase 6,893,000 and 6,775,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 6,167,000 and 3,297,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling 3,000 and 1,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 607,000 and 26,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the three-month and nine-month periods ended October 1, 2023, as PRSUs were not anti-dilutive on a weighted-average basis. PRSUs totaling 33,000 shares of common stock, on a weighted average basis, were outstanding during the three-month period ended October 2,
23


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
2022, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the nine-month period ended October 2, 2022 as PRSUs were not anti-dilutive on a weighted-average basis.
NOTE 17: Loss (Recovery) from Fire
On June 7, 2022, the Company’s primary contract manufacturer experienced a fire at its plant in Indonesia. The fire destroyed a significant amount of Cognex-owned consigned inventories, as well as component inventories owned by the contract manufacturer that were designated for Cognex products. There was no significant damage to the Company's production equipment. Since the date of the fire, the Company has worked with the contract manufacturer to resume production, maintain standards of product quality, and replenish inventories destroyed by the fire. The Company has also been working to ramp up an additional contract manufacturer to further mitigate risk, diversify the supply chain, and expand production capacity.
During the nine-month period ended October 2, 2022, the Company recorded a net loss related to the fire of $20,294,000, consisting primarily of losses from inventories and other assets of $47,794,000, including $2,891,000 during the three-month period ended October 2, 2022, partially offset by an estimated insurance recovery of $27,500,000. These losses are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations. The Company received insurance proceeds of $27,560,000 from the Company's insurance carrier in the fourth quarter of 2022, and gross losses recorded during 2022 related to the fire were further reduced by the proceeds received in excess of the original estimated insurance recovery.
During the nine-month period ended October 1, 2023, the Company recorded recoveries related to the fire of $5,250,000, consisting of $2,500,000 during the three-month period ended July 2, 2023 for proceeds received from the Company's insurance carrier in relation to a business interruption claim and $2,750,000 during the three-month period ended October 1, 2023 for proceeds received as part of a financial settlement for lost inventory and other losses incurred as a result of the fire. The Company expects to receive an additional $2,750,000 by the end of 2023. These recovery amounts are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations.
As of October 1, 2023 and through the date of financial statement issuance, management does not anticipate additional recoveries other than disclosed.
NOTE 18: Restructuring Charges
On December 7, 2022, the Company acquired all of the outstanding shares of SAC Sirius Advanced Cybernetics GmbH ("SAC"), a leader in computational lighting technology based in Germany. Following its acquisition of SAC, the Company performed restructuring activities to align the cost and operating structure of the acquired business with the Company's business strategy. As of December 31, 2022, the majority of these restructuring actions were completed. No additional charges were recorded during the three-month and nine-month periods ended October 1, 2023, or are expected to be incurred in future periods in relation to this restructuring plan.
The following table summarizes the activity in the Company’s restructuring reserve related to these restructuring activities, which is included in “Accrued expenses” on the Consolidated Balance Sheets (in thousands):
One-time Termination BenefitsContract Termination CostsTotal
Balance as of December 31, 2022$964 $75 $1,039 
Cash payments(973)(56)(1,029)
Foreign exchange rate changes9 1 10 
Balance as of October 1, 2023
$ $20 $20 
24


COGNEX CORPORATION
NOTES TO CONSOLIDATED FINANCIAL STATEMENTS (UNAUDITED)
NOTE 19: Subsequent Events
On October 18, 2023, the Company acquired all of the outstanding shares of Moritex Corporation, a leading global provider of optics components with a strong presence in Japan, for an enterprise value of ¥40 billion, or approximately $270 million based on closing-date foreign exchange rates, in an all-cash transaction. Given the timing of this acquisition, the Company is in the process of completing the purchase price allocation for the consideration paid. Transaction costs incurred to date were not material and were expensed as incurred. The financial results of Moritex Corporation prior to the acquisition date are not material to the consolidated financial results of the Company.
On October 31, 2023, the Company’s Board of Directors declared a cash dividend of $0.075 per share. The dividend is payable on December 1, 2023 to all shareholders of record as of the close of business on November 17, 2023.
25


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

Forward-Looking Statements
Certain statements made in this report, as well as oral statements made by the Company from time to time, constitute forward-looking statements within the meaning of Section 27A of the Securities Act of 1933, as amended, and Section 21E of the Securities Exchange Act of 1934, as amended. Readers can identify these forward-looking statements by our use of the words “expects,” “anticipates,” “estimates,” “potential,” “believes,” “projects,” “intends,” “plans,” “will,” “may,” “shall,” “could,” “should,” and similar words and other statements of a similar sense. These statements are based on our current estimates and expectations as to prospective events and circumstances, which may or may not be in our control and as to which there can be no firm assurances given. These forward-looking statements, which include statements regarding business and market trends, future financial performance and financial targets, the integration and expected results from acquired businesses, including Moritex Corporation, customer demand and order rates and timing of related revenue, managing supply shortages, delivery lead times, future product mix, research and development activities, sales and marketing activities, new product offerings and product development activities, cost management, capital expenditures, investments, liquidity, dividends and stock repurchases, strategic and growth plans and opportunities (including our "Emerging Customer" sales initiative), and estimated tax benefits and expenses and other tax matters, involve known and unknown risks and uncertainties that could cause actual results to differ materially from those projected. Such risks and uncertainties include: (1) the reliance on key suppliers, such as our primary contract manufacturer, to manufacture and deliver products; (2) delays in the delivery of our products, the failure to meet delivery schedules, and resulting customer dissatisfaction or loss of sales; (3) the inability to obtain, or the delay in obtaining, components for our products at reasonable prices; (4) the failure to effectively manage product transitions or accurately forecast customer demand which could result in excess or obsolete inventory and resulting charges; (5) the inability to manage disruptions to our distribution centers or to our key suppliers; (6) the expected impact of the fire at our primary contract manufacturer's plant and related recoveries; (7) the inability to design and manufacture high-quality products; (8) the loss of, or curtailment of purchases by, large customers in the logistics, consumer electronics, or automotive industries; (9) information security breaches; (10) the failure to comply with laws or regulations relating to data privacy or data protection; (11) the inability to protect our proprietary technology and intellectual property; (12) the inability to attract and retain skilled employees and maintain our unique corporate culture; (13) the inability to keep pace with the rapid rate of technological change and customer demands in the high-technology marketplace, the inability to develop and introduce new products to the market in a successful and timely manner, and the technological obsolescence of current products; (14) the failure to properly manage the distribution of products and services, including the management of lead times and delivery dates; (15) the impact of competitive pressures; (16) the challenges in integrating and achieving expected results from acquired businesses, including Moritex Corporation; (17) potential disruptions in our business systems; (18) potential impairment charges with respect to our investments or acquired intangible assets; (19) exposure to additional tax liabilities, increases and fluctuations in our effective tax rate, and other tax matters; (20) fluctuations in foreign currency exchange rates and the use of derivative instruments; (21) unfavorable global economic conditions, including increases in interest rates and high inflation rates; (22) business disruptions from natural or man-made disasters, such as fire, or public health issues; (23) economic, political, and other risks associated with international sales and operations, including the impact of trade disputes with China, the Russia-Ukraine war, and the Israel-Hamas war; (24) exposure to potential liabilities, increased costs, reputational harm, and other adverse effects associated with expectations relating to environmental, social, and governance considerations; (25) stock price volatility; and (26) our involvement in time-consuming and costly litigation or activist shareholder activities. The foregoing list should not be construed as exhaustive and we encourage readers to refer to the detailed discussion of risk factors included in Part I - Item 1A of the Company's Annual Report on Form 10-K for the fiscal year ended December 31, 2022, as updated by Part II - Item 1A of this Quarterly Report on Form 10-Q. The Company cautions readers not to place undue reliance upon any such forward-looking statements, which speak only as of the date made. The Company disclaims any obligation to subsequently revise forward-looking statements to reflect the occurrence of anticipated or unanticipated events or circumstances after the date such statements are made.
Executive Overview
Cognex Corporation (the “Company”) invents and commercializes technologies that address some of the most critical manufacturing and distribution challenges. We are a leading global provider of machine vision products and solutions that improve efficiency and quality in high-growth potential businesses across attractive industrial end markets. In addition to product revenue derived from the sale of machine vision products, the Company also generates revenue by providing maintenance and support, consulting, and training services to its customers;
26


however, service revenue accounted for less than 10% of total revenue for all periods presented.
Machine vision is used in a variety of industries where technology is widely recognized as an important component of automated production, distribution, and quality assurance. Virtually every manufacturer or distributor can achieve better quality and efficiency by using machine vision; thus, our applications have a broad base of customers across a variety of industries, including automotive, logistics, consumer electronics, medical-related, semiconductor, consumer products, and food and beverage.
Revenue for the third quarter of 2023 totaled $197,241,000, representing a decrease of 6% from the third quarter of 2022. The decrease was driven primarily by lower revenue from the consumer electronics industry due to weaker demand and the quarterly timing of large customer deployments. Gross margin as a percentage of revenue was 72% for the third quarter of 2023 as compared to 73% for the third quarter of 2022, as the impact of a less favorable revenue mix was partially offset by lower inventory costs.
Operating expenses for the third quarter of 2023 totaled $112,137,000 and were relatively consistent with operating expenses for the third quarter of 2022. On June 7, 2022, our primary contract manufacturer suffered a fire at its Indonesian plant destroying a large portion of the Company's component inventories (refer to Note 17 of the consolidated financial statements). Excluding the impact of losses and recoveries related to the fire, operating expenses for the third quarter of 2023 increased 5% from the third quarter of 2022, primarily due to additional headcount and expenses incurred to support our "Emerging Customer" sales initiative, partially offset by lower incentive compensation expenses based on the Company's expected performance against relevant full-year goals and lower revenue levels.
Operating income decreased to 16% of revenue for the third quarter of 2023 as compared to 19% of revenue for the third quarter of 2022. Excluding the impact of losses and recoveries related to the fire, operating income decreased to 14% of revenue for the third quarter of 2023 as compared to 20% of revenue for the third quarter of 2022, primarily as a result of the lower revenue levels and continued investment in our "Emerging Customer" sales initiative. Net income as a percentage of revenue was 10%, or $0.11 per diluted share, for the third quarter of 2023, and 16% of revenue, or $0.19 per diluted share, for the third quarter of 2022.
Results of Operations
As foreign currency exchange rates are a factor in understanding period-to-period comparisons, we believe the presentation of results on a constant-currency basis in addition to reported results helps improve investors’ ability to understand our operating results and evaluate our performance in comparison to prior periods. We also use results on a constant-currency basis as one measure to evaluate our performance. Constant-currency information compares results between periods as if exchange rates had remained constant period-over-period. We generally refer to such amounts calculated on a constant-currency basis as excluding the impact of foreign currency exchange rate changes. Results on a constant-currency basis are not in accordance with accounting principles generally accepted in the United States of America (U.S. GAAP) and should be considered in addition to, and not as a substitute for, results prepared in accordance with U.S. GAAP.
Revenue
Revenue decreased by $12,381,000, or 6%, for the three-month period and decreased by $125,780,000, or 16%, for the nine-month period as compared to the same periods in 2022. Changes in foreign currency exchange rates resulted in a lower level of total reported revenue for both the three-month and nine-month periods in 2023 as compared to the same periods in 2022. Excluding the impact of foreign currency exchange rate changes, revenue decreased by 5% for the three-month period and decreased by 14% for the nine-month period as compared to the same periods in 2022.
For the three-month period, the decrease in revenue was driven primarily by lower revenue from the consumer electronics industry due to weaker demand and the quarterly timing of large customer deployments. This decrease was partially offset by increases in revenue from other industries, most notably logistics and automotive. Revenue for the third quarter of 2022 was negatively impacted by the fire at our primary contract manufacturer’s plant in Indonesia in June of 2022, which destroyed a large amount of component inventory limiting our ability to fulfill certain orders.
For the nine-month period, the decrease in revenue was due primarily to lower spending trends across our factory automation business, most notably in the consumer electronics and semiconductor industries, and the continued pause in investments by a few large e-commerce logistics customers. Although this trend in logistics was a primary driver of the overall revenue decrease for the nine-month period, logistics revenue for the three-month period was higher than the prior year comparable quarter due to project timing and the negative impact the fire had on revenue across multiple industries, including logistics, specifically for the third quarter of 2022.
27


The following table sets forth our disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands) for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 with the dollar and percentage changes between the corresponding periods, and the line item as a percentage of total revenue.
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022$ Change% ChangeOctober 1, 2023October 2, 2022$ Change% Change
(unaudited)(unaudited)
Americas$80,156 $65,847 $14,309 22 %$243,067 $284,057 $(40,990)(14)%
Percentage of total revenue41 %31 %38 %37 %
Europe$51,827 $48,930 $2,897 %$168,529 $173,561 $(5,032)(3)%
Percentage of total revenue26 %23 %26 %23 %
Greater China$34,485 $66,460 $(31,975)(48)%$139,837 $193,481 $(53,644)(28)%
Percentage of total revenue17 %32 %22 %25 %
Other Asia$30,773 $28,385 $2,388 %$89,444 $115,558 $(26,114)(23)%
Percentage of total revenue16 %14 %14 %15 %
Total revenue$197,241 $209,622 $(12,381)(6)%$640,877 $766,657 $(125,780)(16)%
Changes in revenue from a geographic perspective were as follows:
Revenue from customers based in the Americas increased by 22% for the three-month period and decreased by 14% for the nine-month period as compared to the same periods in 2022. For the three-month period, the increase was driven primarily by higher revenue from the logistics and automotive industries due to the negative impact that the fire had on revenue for these industries during the third quarter of 2022, as well as logistics project timing. For the nine-month period, the decrease was primarily driven by lower revenue from the logistics industry, mainly attributable to the continued pause in investments by a few large e-commerce customers.
Revenue from customers based in Europe increased by 6% for the three-month period and decreased by 3% for the nine-month period as compared to the same periods in 2022. Excluding the impact of foreign currency exchange rate changes, revenue from customers based in Europe remained flat for the three-month period and decreased by 3% for the nine-month period as compared to the same periods in 2022. For the three-month period, the increase in revenue on a U.S. GAAP basis was driven primarily by higher revenue from the automotive industry, partially offset by lower revenue from the consumer electronics industry. For the nine-month period, the decrease in revenue on a U.S. GAAP basis was driven primarily by lower revenue from the logistics and consumer electronics industries, partially offset by increases in revenue from the automotive industry.
Revenue from customers based in Greater China decreased by 48% for the three-month period and decreased by 28% for the nine-month period as compared to the same periods in 2022. Excluding the impact of foreign currency exchange rate changes, revenue from customers based in Greater China decreased by 41% for the three-month period and decreased by 22% for the nine-month period as compared to the same periods in 2022. These decreases in revenue were driven primarily by lower revenue from the consumer electronics industry due to weaker demand, and for the three-month period specifically, the quarterly timing of large customer deployments. Challenging business conditions in China also resulted in broad-based declines in revenue from customers across multiple industries, further contributing to the overall decreases in revenue for the nine-month period.
Revenue from customers based in other countries in Asia increased by 8% for the three-month period and decreased by 23% for the nine-month period as compared to the same periods in 2022. Excluding the impact of foreign currency exchange rate changes, revenue from customers based in other countries in Asia increased by 10% for the three-month period and decreased by 18% for the nine-month period as compared to the same periods in 2022. For the three-month period, the increases were driven by higher revenue from the automotive and logistics industries. For the nine-month period, the decreases resulted from broad-based declines in revenue from customers across multiple industries, most notably the semiconductor industry.
28


Gross Margin
The following table sets forth our gross margin (in thousands) for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 with the dollar and percentage changes between the corresponding periods, and the line item as a percentage of total revenue.
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022$ Change% ChangeOctober 1, 2023October 2, 2022$ Change% Change
(unaudited)(unaudited)
Gross margin$142,774 $152,239 $(9,465)(6)%$466,197 $552,341 $(86,144)(16)%
Percentage of total revenue72 %73 %73 %72 %
Gross margin as a percentage of revenue was 72% and 73% for the three-month and nine-month periods in 2023, respectively, as compared to 73% and 72% for the same periods in 2022. Gross margin as a percentage of revenue remained relatively flat for these periods, as the impact of a less favorable revenue mix was offset by lower inventory costs. These lower costs were driven by a reduction in premiums paid to brokers for the purchase of components in response to global supply chain constraints and the replenishment of inventory after the fire at our primary contract manufacturer’s plant in Indonesia in June of 2022.
Operating Expenses
The following table sets forth our operating expenses (in thousands) for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 with the dollar and percentage changes between the corresponding periods, and the line item as a percentage of total revenue.
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022$ Change% ChangeOctober 1, 2023October 2, 2022$ Change% Change
(unaudited)(unaudited)
Research, development, and engineering expenses$32,580 $33,954 $(1,374)(4)%$104,707 $103,999 $708 %
Percentage of total revenue17 %16 %16 %14 %
Selling, general, and administrative expenses$82,307 $75,371 $6,936 %$248,767 $236,156 $12,611 %
Percentage of total revenue42 %36 %39 %31 %
Loss (recovery) from fire$(2,750)$2,891 $(5,641)(195)%$(5,250)$20,294 $(25,544)(126)%
Percentage of total revenue(1)%%(1)%%
Total operating expenses$112,137 $112,216 $(79)— %$348,224 $360,449 $(12,225)(3)%
Percentage of total revenue57 %54 %54 %47 %
Research, Development, and Engineering Expenses
Research, development, and engineering (RD&E) expenses decreased by $1,374,000, or 4%, for the three-month period and increased by $708,000, or 1%, for the nine-month period as compared to the same periods in 2022. For both the three-month and nine-month periods, personnel-related costs increased as a result of headcount additions to support new product initiatives and compensation increases provided to employees as part of our annual merit process, although this increase moderated for the three-month period as headcount levels were realigned to the lower business levels. These increases were offset by lower incentive compensation expenses for both the three-month and nine-month periods based on the Company's expected performance against relevant full-year goals.
RD&E expenses as a percentage of revenue were 17% and 16% for the three-month and nine-month periods in 2023, respectively, as compared to 16% and 14% for the same periods in 2022, respectively. We believe that a continued commitment to RD&E activities is essential in order to maintain product leadership with our existing products and to provide innovative new product offerings, as well as to provide engineering support for large customers. In addition, we consider our ability to accelerate the time to market for new products to be critical to our revenue growth and competitive position. These percentages are impacted by revenue levels and investing cycles.
29


Selling, General, and Administrative Expenses
Selling, general, and administrative (SG&A) expenses increased by $6,936,000, or 9%, for the three-month period and increased by $12,611,000, or 5%, for the nine-month period as compared to the same periods in 2022. SG&A expenses increased due to costs related to our “Emerging Customer” sales initiative, including additional headcount, travel expenses, and sales demonstration equipment. We launched this initiative towards the end of 2022 to broaden the reach of our sales force to customers who are relatively new to factory automation and have not fully realized the advantages of machine vision.
Unrelated to our "Emerging Customer" sales initiative, for both the three-month and nine-month periods, we also had higher personnel-related costs resulting primarily from compensation increases provided to employees as part of our annual merit process. Transaction costs related to the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements) further contributed to the increases to total SG&A expenses.
These increases to total SG&A expenses were partially offset by lower incentive compensation expenses than the prior year, which included sales commissions and incentive bonuses, due to lower revenue levels and based on the Company's expected performance against relevant full-year goals.
Loss (Recovery) from Fire
On June 7, 2022, the Company’s primary contract manufacturer experienced a fire at its plant in Indonesia. The fire destroyed a significant amount of Cognex-owned consigned inventories, as well as component inventories owned by the contract manufacturer that were designated for Cognex products. There was no significant damage to the Company's production equipment. Since the date of the fire, the Company has worked with the contract manufacturer to resume production, maintain standards of product quality, and replenish inventories destroyed by the fire. The Company has also been working to ramp up an additional contract manufacturer to further mitigate risk, diversify the supply chain, and expand production capacity.
In the third quarter of 2022, the Company recorded a loss of $2,891,000 primarily related to the deleveraging of fixed costs of distribution centers and inventory write-offs for products deemed to have a net realizable value of zero as a result of the fire. In the third quarter of 2023, the Company recorded a recovery related to the fire of $2,750,000 for proceeds received as part of a financial settlement for lost inventory and other losses incurred as a result of the fire. The Company expects to receive an additional $2,750,000 by the end of 2023.
As of October 1, 2023 and through the date of financial statement issuance, management does not anticipate additional recoveries other than disclosed.
Non-operating Income (Expense)
The following table sets forth our non-operating income (expense) (in thousands) for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 with the dollar and percentage changes between the corresponding periods.
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022$ Change% ChangeOctober 1, 2023October 2, 2022$ Change% Change
(unaudited)(unaudited)
Foreign currency gain (loss)$(8,699)$(1,880)$(6,819)363 %$(9,910)$(4,367)$(5,543)127 %
Investment income$4,891 $1,416 $3,475 245 %$12,573 $4,389 $8,184 186 %
Other income (expense)$173 $(214)$387 (181)%$358 $(450)$808 (180)%
Total non-operating income (expense)$(3,635)$(678)$(2,957)436 %$3,021 $(428)$3,449 (806)%
30


The Company recorded foreign currency losses of $8,699,000 and $9,910,000 for the three-month and nine-month periods in 2023, respectively, and $1,880,000 and $4,367,000 for the three-month and nine-month periods in 2022, respectively. In the third quarter of 2023, the Company recorded a foreign currency loss of $8,456,000 on the settlement of a foreign currency forward contract entered into to hedge the Japanese Yen purchase price of the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements). Remaining foreign currency gains and losses in each period resulted primarily from the revaluation and settlement of assets and liabilities that are denominated in currencies other than the functional currency of the Company, which is the U.S. Dollar, or its subsidiaries.
Investment income for the three-month and nine-month periods in 2023 was $4,891,000 and $12,573,000, respectively, representing increases of $3,475,000 and $8,184,000, respectively, from the prior comparable periods in 2022. The increases were primarily due to higher yields on the Company's portfolio of debt securities, and to a lesser extent, higher investment balances.
The Company recorded other income of $173,000 and $358,000 for the three-month and nine-month periods in 2023, respectively, compared to other expense of $214,000 and $450,000 for the three-month and nine-month periods in 2022, respectively.
Income Tax Expense
The following table sets forth income tax information (in thousands) for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 with the dollar and percentage changes between the corresponding periods.
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022$ Change% ChangeOctober 1, 2023October 2, 2022$ Change% Change
(unaudited)(unaudited)
Income before income tax expense$27,002 $39,345 $(12,343)(31)%$120,994 $191,464 $(70,470)(37)%
Income tax expense$8,086 $5,365 $2,721 51 %$18,989 $31,250 $(12,261)(39)%
Effective income tax rate30 %14 %16 %16 %
The Company’s effective tax rate was 30% and 16% for the three-month and nine-month periods in 2023, respectively, and 14% and 16% for the same periods in 2022.
The increase in the effective tax rate from 14% to 30% for the three-month period primarily resulted from the impact of discrete tax items. Compared to a net discrete tax benefit recorded for the three-month period in 2022, the Company recorded a net discrete tax expense for the three-month period in 2023 primarily driven by return-to-provision adjustments and an adjustment related to deferred state taxes due to a reduction in our blended state rate.
The effective tax rate remained at 16% for both the nine-month periods in 2023 and 2022.
Liquidity and Capital Resources
The Company has historically been able to generate positive cash flow from operations, which has funded its operating activities and other cash requirements and has resulted in an accumulated cash and investment balance of $845,639,000 as of October 1, 2023. The Company has established guidelines relative to credit ratings, diversification, and maturities of its investments to maintain the liquidity and safety of the investment portfolio.
As of October 1, 2023, the Company's portfolio of debt securities was in a net unrealized loss position of $19,753,000. Although the Company typically holds investments in an unrealized loss position until full value recovery at maturity, if the Company is required to sell debt securities to meet liquidity needs, it may sell these investments at a loss. In preparation for the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements), the Company liquidated certain debt securities in an unrealized loss position and recorded gross realized losses of approximately $733,000 in the third quarter of 2023, and approximately $1,332,000 in the fourth quarter of 2023 prior to the October 18, 2023 purchase date.
31


Operating activities
Net cash provided by operating activities totaled $98,425,000 for the nine-month period in 2023. Significant uses of cash for the nine-month period consisted of payments made to build up inventory levels, as well as incentive compensation payments made in the first quarter that were earned and accrued in 2022.
Investing activities
Net cash provided by investing activities totaled $211,768,000 for the nine-month period in 2023. Investing activities included proceeds from the maturities and sales of investments to fund the acquisition of Moritex Corporation. Investing activities also included capital expenditures, which totaled $16,062,000 for the nine-month period in 2023 and consisted primarily of continued investments in business systems related to the Company's sales process, manufacturing test equipment related to new product introductions, and leasehold improvements.
Financing activities
Net cash used in financing activities totaled $92,573,000 for the nine-month period in 2023.
On March 12, 2020, the Company's Board of Directors authorized the repurchase of $200,000,000 of the Company's common stock. Under this March 2020 program, in addition to repurchases made in prior years, the Company repurchased 1,677,000 shares, and an additional 5,000 shares that were repurchased in 2021 and settled in 2022, at a cost of $117,000,000 during the nine-month period ended October 2, 2022, which completed purchases under this program. On March 3, 2022, the Company's Board of Directors authorized the repurchase of an additional $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 1,125,000 shares at a total cost of $61,387,000 during the nine-month period ended October 2, 2022. Under this same March 2022 program, in addition to repurchases made in the prior year, the Company repurchased 1,157,000 shares at a total cost of $59,640,000 during the nine-month period ended October 1, 2023, leaving a remaining balance of $353,046,000 as of October 1, 2023. The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock awards, stock price, share availability, and cash requirements. The Company is authorized to make repurchases of its common stock through open market purchases, pursuant to Rule 10b5-1 trading plans, or in privately negotiated transactions.
The Company’s Board of Directors declared and paid cash dividends of $0.070 per share for the first, second, and third quarters of 2023, totaling $36,209,000. Future dividends will be declared at the discretion of the Company's Board of Directors and will depend on such factors as the Board deems relevant, including, among other things, the Company's ability to generate positive cash flow from operations.
Future Cash Requirements
The Company's future material cash requirements include contractual obligations related to inventory purchase commitments and leases. As of October 1, 2023, the Company had inventory purchase commitments of $70,635,000, with the majority payable in the next twelve months, and lease payment obligations of $105,441,000, with $11,255,000 payable in the next twelve months.
Other significant and/or expected cash outlays for 2023 are as follows:
On October 18, 2023, the Company acquired all of the outstanding shares of Moritex Corporation, a leading global provider of optics components with a strong presence in Japan, for an enterprise value of ¥40 billion, or approximately $270 million based on closing-date foreign exchange rates, in an all-cash transaction. The payment related to this acquisition was made in full during the fourth quarter of 2023.
On October 16, 2019, the Company acquired all the outstanding shares of Sualab Co., Ltd., a provider of deep learning-based vision software for industrial image analysis based in Korea. The total consideration for the acquisition included deferred payments of $24,040,000 contingent on the continued employment of key talent that had been accrued over the term of employment. These payments were made in full during the fourth quarter of 2023.
For the remainder of 2023, we expect significant cash outlays related to the Company's "Emerging Customer" sales initiative as we continue to grow our sales force in order to reach customers who may not be utilizing machine vision to its full potential.
We believe that the Company's existing cash and investment balances, together with cash flow from operations, will be sufficient to meet its operating, investing, and financing activities for the next twelve months. In addition, the Company has no long-term debt. We believe that our balance sheet condition has put us in a strong position with respect to anticipated longer-term liquidity needs.
32



New Pronouncements
Refer to Part I - Note 2 within this Form 10-Q, for a full description of recently issued accounting pronouncements including the expected dates of adoption and the expected impact on the financial position and results of operations of the Company.

ITEM 3: QUANTITATIVE AND QUALITATIVE DISCLOSURES ABOUT MARKET RISK
There have been no material changes to the Company’s exposures to market risk since December 31, 2022.

ITEM 4: CONTROLS AND PROCEDURES
As required by Rules 13a-15 and 15d-15 of the Securities Exchange Act of 1934, the Company has evaluated, with the participation of management, including the Chief Executive Officer and the Chief Financial Officer, the effectiveness of its disclosure controls and procedures (as defined in such rules) as of the end of the period covered by this report. Based on such evaluation, the Chief Executive Officer and Chief Financial Officer concluded that such disclosure controls and procedures were effective as of that date. From time to time, the Company reviews its disclosure controls and procedures, and may from time to time make changes aimed at enhancing their effectiveness and to ensure that the Company’s systems evolve with its business.
There was no change in the Company's internal control over financial reporting that occurred during the quarter ended October 1, 2023 that materially affected, or is reasonably likely to materially affect, the Company's internal control over financial reporting.
33


PART II: OTHER INFORMATION

ITEM 1. LEGAL PROCEEDINGS
Various claims and legal proceedings generally incidental to the normal course of business are pending or threatened on behalf of or against the Company. While we cannot predict the outcome of these matters, we believe that any liability arising from them will not have a material adverse effect on our financial position, liquidity, or results of operations.

ITEM 1A. RISK FACTORS
For a list of factors that could affect the Company’s business, results of operations, and financial condition, see the risk factors discussion provided in Part I—Item 1A of the Company’s Annual Report on Form 10-K for the fiscal year ended December 31, 2022.

ITEM 2. UNREGISTERED SALES OF EQUITY SECURITIES AND USE OF PROCEEDS
The following table sets forth information with respect to purchases by the Company of shares of its common stock during the three-month period ended October 1, 2023:
Total
Number
of Shares
Purchased
Average
Price Paid
per Share
Total Number of
Shares
Purchased as
Part of Publicly
Announced
Plans or
Programs (1)
Approximate
Dollar Value
of Shares that
May Yet Be
Purchased
Under the
Plans or
Programs (1)
July 3, 2023 - July 30, 2023144,000 $56.00 144,000 $355,464,000 
July 31, 2023 - August 27, 202347,000 52.09 47,000 353,046,000 
August 28, 2023 - October 1, 2023— — — — 
Total191,000 $55.05 191,000 $353,046,000 
(1) On March 3, 2022, the Company's Board of Directors authorized the repurchase of an additional $500,000,000 of the Company's common stock. Purchases under this program commenced in March 2022. The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock awards, stock price, share availability, and cash requirements. The Company is authorized to make repurchases of its common stock through open market purchases, pursuant to Rule 10b5-1 trading plans, or in privately negotiated transactions.

ITEM 3. DEFAULTS UPON SENIOR SECURITIES
None.

ITEM 4. MINE SAFETY DISCLOSURES
Not applicable.

ITEM 5. OTHER INFORMATION

During the three-month period ended October 1, 2023, none of the Company’s directors or officers (as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934) adopted, terminated or modified a Rule 10b5-1 trading arrangement or non-Rule 10b5-1 trading arrangement (as such terms are defined in Item 408 of Regulation S-K).

34


 ITEM 6. EXHIBITS
Exhibit Number
3.1
31.1
31.2
32.1
32.2
101.SCHInline XBRL Taxonomy Extension Schema Document*
101.CALInline XBRL Taxonomy Extension Calculation Linkbase Document*
101.LABInline XBRL Taxonomy Extension Label Linkbase Document*
101.PREInline XBRL Taxonomy Extension Presentation Linkbase Document*
101.DEFInline XBRL Taxonomy Extension Definition Linkbase Document*
104Cover Page Interactive Data File (formatted as Inline XBRL with applicable taxonomy extension information contained in Exhibits 101.*)
*Filed herewith
**Furnished herewith

35


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.
 
Date:October 31, 2023 COGNEX CORPORATION
 By:/s/ Robert J. Willett
 Robert J. Willett
 President and Chief Executive Officer
 (Principal Executive Officer)
 By:/s/ Paul D. Todgham
 Paul D. Todgham
 Senior Vice President of Finance and Chief Financial Officer
 (Principal Financial Officer)

36
EX-31.1 2 a1012023-10qxexhibit311.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, Robert J. Willett, certify that:
1    I have reviewed this quarterly report on Form 10-Q of Cognex Corporation;
2    Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3    Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4    The registrant’s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
 
(a)Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5    The registrant’s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
 
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Date:October 31, 2023 By: /s/ Robert J. Willett
  Robert J. Willett
  President and Chief Executive Officer
(Principal Executive Officer)

EX-31.2 3 a1012023-10qxexhibit312.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Paul D. Todgham, certify that:
1    I have reviewed this quarterly report on Form 10-Q of Cognex Corporation;
2    Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3    Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4    The registrant’s other certifying officer(s) and I are responsible for establishing and maintaining disclosure controls and procedures (as defined in Exchange Act Rules 13a-15(e) and 15d-15(e)) and internal control over financial reporting (as defined in Exchange Act Rules 13a-15(f) and 15d-15(f)) for the registrant and have:
 
(a)Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b)Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c)Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d)Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and

5    The registrant’s other certifying officer(s) and I have disclosed, based on our most recent evaluation of internal control over financial reporting, to the registrant’s auditors and the audit committee of the registrant’s board of directors (or persons performing the equivalent functions):
 
(a)All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b)Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
Date:October 31, 2023 By: /s/ Paul D. Todgham
  Paul D. Todgham
  Senior Vice President of Finance and Chief Financial Officer
(Principal Financial Officer)

EX-32.1 4 a1012023-10qxexhibit321.htm EX-32.1 Document

Exhibit 32.1*
CERTIFICATION PURSUANT TO
18 U.S.C. 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002
The undersigned officer of Cognex Corporation (the “Company”) hereby certifies to his knowledge that the Company’s quarterly report on Form 10-Q for the quarterly period ended October 1, 2023 (the “Report”), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section 13(a) or 15(d), as applicable, of the Securities Exchange Act of 1934, as amended, and that the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
Date:October 31, 2023 By:/s/ Robert J. Willett
 Robert J. Willett
 President and Chief Executive Officer
 (Principal Executive Officer)
 




























*This certification shall not be deemed “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, or otherwise subject to the liability of that section, nor shall it be deemed to be incorporated by reference into any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934.

EX-32.2 5 a1012023-10qxexhibit322.htm EX-32.2 Document

Exhibit 32.2*
CERTIFICATION PURSUANT TO
18 U.S.C. 1350,
AS ADOPTED PURSUANT TO
SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002
The undersigned officer of Cognex Corporation (the “Company”) hereby certifies to his knowledge that the Company’s quarterly report on Form 10-Q for the quarterly period ended October 1, 2023 (the “Report”), as filed with the Securities and Exchange Commission on the date hereof, fully complies with the requirements of Section 13(a) or 15(d), as applicable, of the Securities Exchange Act of 1934, as amended, and that the information contained in the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.
 
Date:October 31, 2023 By:/s/ Paul D. Todgham
 Paul D. Todgham
 Senior Vice President of Finance and Chief Financial Officer
 (Principal Financial Officer)
 


























*This certification shall not be deemed “filed” for purposes of Section 18 of the Securities Exchange Act of 1934, or otherwise subject to the liability of that section, nor shall it be deemed to be incorporated by reference into any filing under the Securities Act of 1933 or the Securities Exchange Act of 1934.

EX-101.SCH 6 cgnx-20231001.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - Consolidated Statements of Operations link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - Consolidated Statements of Comprehensive Income link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 0000008 - Statement - Consolidated Statement of Shareholders' Equity link:presentationLink link:calculationLink link:definitionLink 0000009 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - New Pronouncements link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Cash, Cash Equivalents, and Investments link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Inventories link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Leases link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Goodwill link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Intangible Assets link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Warranty Obligations link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Commitment and Contingencies link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Derivative Instruments link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Revenue Recognition link:presentationLink link:calculationLink link:definitionLink 0000022 - Disclosure - Stock-Based Compensation Expense link:presentationLink link:calculationLink link:definitionLink 0000023 - Disclosure - Stock Repurchase Program link:presentationLink link:calculationLink link:definitionLink 0000024 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000025 - Disclosure - Weighted-Average Shares link:presentationLink link:calculationLink link:definitionLink 0000026 - Disclosure - Loss (Recovery) from Fire link:presentationLink link:calculationLink link:definitionLink 0000027 - Disclosure - Restructuring Charges link:presentationLink link:calculationLink link:definitionLink 0000028 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Cash, Cash Equivalents, and Investments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Inventories (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Leases (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Goodwill (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Warranty Obligations (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Derivative Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Revenue Recognition (Tables) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Stock-Based Compensation Expense (Tables) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Weighted-Average Shares (Tables) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Restructuring Charges (Tables) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Cash, Cash Equivalents, and Investments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Leases - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Warranty Obligations (Detail) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Commitment and Contingencies (Details) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Derivative Instruments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Details) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details) link:presentationLink link:calculationLink link:definitionLink 9954501 - Disclosure - Derivative Instruments - Offsetting Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Details) link:presentationLink link:calculationLink link:definitionLink 9954503 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details) link:presentationLink link:calculationLink link:definitionLink 9954504 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details) link:presentationLink link:calculationLink link:definitionLink 9954505 - Disclosure - Revenue Recognition - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954506 - Disclosure - Revenue Recognition - Schedule of Allowance for Credit Loss (Details) link:presentationLink link:calculationLink link:definitionLink 9954507 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details) link:presentationLink link:calculationLink link:definitionLink 9954508 - Disclosure - Stock-Based Compensation Expense - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954509 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Details) link:presentationLink link:calculationLink link:definitionLink 9954510 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details) link:presentationLink link:calculationLink link:definitionLink 9954511 - Disclosure - Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details) link:presentationLink link:calculationLink link:definitionLink 9954512 - Disclosure - Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details) link:presentationLink link:calculationLink link:definitionLink 9954513 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details) link:presentationLink link:calculationLink link:definitionLink 9954514 - Disclosure - Stock Repurchase Program (Details) link:presentationLink link:calculationLink link:definitionLink 9954515 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 9954516 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Details) link:presentationLink link:calculationLink link:definitionLink 9954517 - Disclosure - Weighted-Average Shares - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954518 - Disclosure - Loss (Recovery) from Fire (Details) link:presentationLink link:calculationLink link:definitionLink 9954519 - Disclosure - Restructuring Charges (Details) link:presentationLink link:calculationLink link:definitionLink 9954520 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 cgnx-20231001_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 cgnx-20231001_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 cgnx-20231001_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Pay vs Performance Disclosure [Line Items] Accrued expenses Accrued Liabilities, Current Statistical Measurement [Domain] Statistical Measurement [Domain] Deferred Revenue, by Arrangement, Disclosure Deferred Revenue, by Arrangement, Disclosure [Table Text Block] Research, development, and engineering expenses Research and Development Expense Underlying Security Market Price Change Underlying Security Market Price Change, Percent Revenue from External Customers by Products and Services Revenue from External Customers by Products and Services [Table Text Block] Award Type [Domain] Award Type [Domain] Fair Value as of Grant Date Award Grant Date Fair Value Nonvested as of beginning of period (in shares) Nonvested as of end of period (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Payments to Acquire Businesses, Gross Payments to Acquire Businesses, Gross Summary of Available-for-Sale Investments Schedule of Available-for-Sale Securities Reconciliation [Table Text Block] Effect of foreign exchange rate changes on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Deferred income taxes Deferred Income Tax Liabilities, Net MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] Performance Shares (PRSUs) Performance Shares [Member] Accounts payable Accounts Payable, Current Exercisable (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term Accrued income taxes Increase (Decrease) in Accrued Taxes Payable Restatement Determination Date: Restatement Determination Date [Axis] Purchases of investments Payments to Acquire Investments Statutory tax rate Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent Commitments and Contingencies Commitments and Contingencies Insider Trading Policies and Procedures [Line Items] Exercisable as of reporting date (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] Foreign exchange rate changes Restructuring Reserve, Foreign Currency Translation Gain (Loss) Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Unusual or Infrequent Item, or Both [Line Items] Unusual or Infrequent Item, or Both [Line Items] 2028 Lessee, Operating Lease, Liability, to be Paid, Year Five Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] Stock Repurchase Program Equity [Text Block] Options vested or expected to vest Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value Geographical [Axis] Geographical [Axis] Income Taxes Income Tax Disclosure [Text Block] Fulfillment of warranty obligations Standard and Extended Product Warranty Accrual, Decrease for Payments Unbilled revenue Increase (Decrease) in Contract with Customer, Liability Expected dividend yield Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate Provisions for warranties issued during the period Standard and Extended Product Warranty Accrual, Increase for Warranties Issued Canadian Dollar Canada, Dollars Current liabilities: Liabilities, Current [Abstract] Change in tax expense related to valuation allowance Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount Preferred stock par value (in dollars per share) Preferred Stock, Par or Stated Value Per Share Subsequent Event Type [Domain] Subsequent Event Type [Domain] Weighted-Average Grant Date Fair Value Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Other Asia Asia, Excluding China [Member] Asia, Excluding China [Member] Payment of dividends Dividends, Cash Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Loss from fire, inventories and other assets Loss From Catastrophes, Inventory Write Down And Impairment Of Other Assets Loss From Catastrophes, Inventory Write Down And Impairment Of Other Assets Forfeited or expired (in dollars per shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price Payment of dividends Payments of Ordinary Dividends, Common Stock Derivative Instruments, Gain (Loss) [Line Items] Derivative Instruments, Gain (Loss) [Line Items] Diluted (usd per share) Earnings Per Share, Diluted Gross amounts of recognized liabilities Derivative Liability, Subject to Master Netting Arrangement, before Offset PEO Total Compensation Amount PEO Total Compensation Amount Accounts receivable, allowance for credit losses of $580 and $730 in 2023 and 2022, respectively Accounts Receivable, after Allowance for Credit Loss, Current Economic hedge forward contracts Foreign Currency Contracts, Liability, Fair Value Disclosure Goodwill [Roll Forward] Goodwill [Roll Forward] Vested and expected to vest (in dollars per shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Unobservable Inputs (Level 3) Fair Value, Inputs, Level 3 [Member] Outstanding (in shares) Outstanding (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number Net issuance of common stock under stock plans Stock Issued During Period, Value, Stock Options Exercised Trading Symbol Trading Symbol Restructuring Plan [Domain] Restructuring Plan [Domain] Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Granted (in dollars per shares) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price Weighted-average grant-date fair values (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value 2023 Plan Cognex Corporation 2023 Stock Option And Incentive Plan [Member] Cognex Corporation 2023 Stock Option And Incentive Plan Net income Net income Net Income (Loss) Thereafter Finite-Lived Intangible Asset, Expected Amortization, after Year Five Total current liabilities Liabilities, Current Derivative Contract [Domain] Derivative Contract [Domain] Fair Value Disclosures [Abstract] Fair Value Disclosures [Abstract] Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Company Selected Measure Name Company Selected Measure Name Leases Lessee, Operating Leases [Text Block] Corporate bonds Corporate Bond Securities [Member] All Currencies [Domain] All Currencies [Domain] LIABILITIES AND SHAREHOLDERS’ EQUITY Liabilities and Equity [Abstract] Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks Finite-Lived Intangible Assets [Line Items] Amortized cost of current investments Debt Securities, Available-for-Sale, Amortized Cost, Current Repurchase of common stock Stock Repurchased During Period, Value Derivative Instruments, Gain (Loss) [Table] Derivative Instruments, Gain (Loss) [Table] Shareholders’ equity: Equity, Attributable to Parent [Abstract] Gross Unrealized Losses Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Loss, before Tax Exercised (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Liability for uncertain tax positions Liability For Uncertain Tax Positions Liability for uncertain tax positions, total. Non-compete agreements Other Intangible Assets [Member] Cost of revenue Cost of Goods and Services Sold Income Tax Contingency [Table] Income Tax Contingency [Table] Vesting period for stock option plans Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Deferral of revenue billed in the current period, net of recognition Deferred Revenue, Additions Executive Category: Executive Category [Axis] Calculation of Weighted-Average Shares Schedule of Weighted Average Number of Shares [Table Text Block] Shares (in thousands) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Summary of Significant Accounting Policies Significant Accounting Policies [Text Block] Exercised (in dollars per shares) Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Exercises in Period, Weighted Average Exercise Price Quoted Prices in Active Markets for Identical Assets (Level 1) Fair Value, Inputs, Level 1 [Member] Name Measure Name Name Forgone Recovery, Individual Name British Pound United Kingdom, Pounds Goodwill Balance as of December 31, 2022 Balance as of October 1, 2023 Goodwill Equity Components [Axis] Equity Components [Axis] Financial Instruments [Domain] Financial Instruments [Domain] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Accrued expenses Increase (Decrease) in Accrued Liabilities Shares available for grant under stock option plans (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant Investment Type [Axis] Investment Type [Axis] Lessee, Lease, Description [Table] Lessee, Lease, Description [Table] Non-cash impact of write-offs related to fire (Note 17) Non-cash, Loss from Catastrophes Non-cash, Loss from Catastrophes Underlying Securities Award Underlying Securities Amount Entity Small Business Entity Small Business 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Four Investments [Domain] Investments [Domain] Local Phone Number Local Phone Number Accounts receivable Increase (Decrease) in Accounts Receivable Recovery of Erroneously Awarded Compensation Disclosure [Line Items] December 2022 December 2022 [Member] December 2022 Foreign exchange rate changes Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease) Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease) Dividends (in dollars per share) Common Stock, Dividends, Per Share, Declared Derivative, Notional Amount Derivative, Notional Amount Net unrealized gain (loss) on available-for-sale investments, net of tax OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax Measurement Frequency [Axis] Measurement Frequency [Axis] Non-current operating lease liabilities Operating Lease, Liability, Noncurrent Effective Maturity Dates of Available-for-Sale Investments Investments Classified by Contractual Maturity Date [Table Text Block] Revenue from External Customer [Line Items] Revenue from External Customer [Line Items] Restricted Stock Units (RSUs) Restricted Stock Units (RSUs) [Member] Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Accrued expenses Accrued Liabilities [Member] Depreciation of property, plant, and equipment Depreciation Income Statement Location [Axis] Income Statement Location [Axis] Gross amounts offset Derivative Liability, Subject to Master Netting Arrangement, Collateral, Right to Reclaim Cash Offset Lessee, Operating Lease, Liability, Maturity Lessee, Operating Lease, Liability, to be Paid, Maturity [Table Text Block] Effect of dilutive equity awards (in shares) Weighted Average Number of Shares Outstanding, Diluted, Adjustment Foreign Exchange Forward Foreign Exchange Forward [Member] Europe Europe [Member] Realized (gain) loss on sale of investments Gain (Loss) on Sale of Investments Accrued income taxes Accrued Income Taxes, Current Product and Service [Domain] Product and Service [Domain] Other Performance Measure, Amount Other Performance Measure, Amount Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Inventories Increase (Decrease) in Inventories Net change related to available-for-sale investments Other Comprehensive Income (Loss), Available-for-Sale Securities Adjustment, Net of Tax, Portion Attributable to Parent Research, development, and engineering Research and Development Expense [Member] Cash flows from investing activities: Net Cash Provided by (Used in) Investing Activities [Abstract] Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] Balance at beginning of period Balance at end of period Restructuring Reserve Anti-dilutive securities excluded from computation of earnings per share (shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Award Type [Axis] Award Type [Axis] Derivative Instruments and Hedging Activities Disclosure [Abstract] Derivative Instruments and Hedging Activities Disclosure [Abstract] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Total fair values of stock options vest Share Based Compensation Arrangement By Share Based Payment Award Options Vested Fair Value Share based compensation arrangement by share based payment award options vested fair value. Plan Name [Domain] Plan Name [Domain] Document Quarterly Report Document Quarterly Report Gross amounts offset Derivative Asset, Subject to Master Netting Arrangement, Collateral, Obligation to Return Cash, Offset Against Derivative Asset Contract Termination Costs Contract Termination [Member] Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Shares auhtorised for grant under stock option plans (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Authorized Hedging Designation [Axis] Hedging Designation [Axis] Excess and obsolete inventory charges Excess and Obsolete Inventory Charges Excess and Obsolete Inventory Charges Outstanding (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term Accounts Receivable, Allowance for Credit Loss [Roll Forward] Accounts Receivable, Allowance for Credit Loss [Roll Forward] Remainder of fiscal 2023 Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year Trading Arrangement: Trading Arrangement [Axis] PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Derivatives, Fair Value [Line Items] Derivatives, Fair Value [Line Items] Entity File Number Entity File Number Thereafter Lessee, Operating Lease, Liability, to be Paid, after Year Five Operating lease liabilities Operating Lease, Liability, Current Debt securities, available-for-sale, allowance for credit loss Debt Securities, Available-for-Sale, Allowance for Credit Loss Amortization of intangible assets Amortization of Intangible Assets Preferred stock, $.01 par value – Authorized: 400 shares in 2023 and 2022, respectively; no shares issued and outstanding Preferred Stock, Value, Outstanding Entity Shell Company Entity Shell Company 2026 Lessee, Operating Lease, Liability, to be Paid, Year Three Non-current investments, amortized cost of $349,060 and $476,148 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 Non-current investments Long-Term Investments Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Singapore Dollar Singapore, Dollars New Pronouncements New Accounting Pronouncements, Policy [Policy Text Block] Intangible assets, net Net Carrying Value Finite-Lived Intangible Assets, Net Restatement Determination Date Restatement Determination Date Unbilled revenue Unbilled Receivables, Current Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Schedule of Restructuring and Related Costs [Table] Schedule of Restructuring and Related Costs [Table] Outstanding forward contracts Derivative Asset, Notional Amount Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Insurance recoveries, inventory and other losses Insurance Recoveries, Lost Inventory And Other Losses Insurance Recoveries, Lost Inventory And Other Losses Customer relationships Customer Contracts And Relationships [Member] Customer Contracts And Relationships [Member] 2025 Lessee, Operating Lease, Liability, to be Paid, Year Two 88,000 square-foot premises 88,000 Square-Foot Premises [Member] 88,000 Square-Foot Premises Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Operating lease, cost Operating Lease, Cost Fair value, 12 months or greater Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer Common stock, shares issued (in shares) Beginning Balance (in shares) Ending Balance (in shares) Common Stock, Shares, Issued Schedule of Nonvested Restricted Stock Units Activity Schedule of Nonvested Restricted Stock Units Activity [Table Text Block] Vested (in shares) Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Maturities and sales of investments Proceeds from Sale, Maturity and Collection of Investments Gross margin Gross Profit Deferred revenue and customer deposits Contract with Customer, Liability, Current Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block] Sovereign bonds Sovereign Debt [Member] Security Exchange Name Security Exchange Name Total unrealized Losses Debt Securities, Available-for-Sale, Unrealized Loss Position, Accumulated Loss Selling, general, and administrative expenses Selling, General and Administrative Expense Accumulated other comprehensive loss, net of tax Accumulated Other Comprehensive Income (Loss), Net of Tax Swiss Franc Switzerland, Francs Employee Stock Option Employee Stock Option [Member] Derivative Instruments Derivative Instruments and Hedging Activities Disclosure [Text Block] Economic hedge forward contracts Foreign Currency Contract, Asset, Fair Value Disclosure Maximum Maximum [Member] Total comprehensive income Comprehensive Income (Loss), Net of Tax, Attributable to Parent Unrecognized compensation expense Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Groups within the employee population Number Of Groups Within Employee Population Number of groups within employee population. 2-3 Years Available For Sale Securities Debt Maturities After Two Years Before Three Years Fair Value Available-for-sale securities, debt maturities after second year but before third year, fair value. Document Type Document Type Tabular List, Table Tabular List [Table Text Block] Domestic Tax Authority Domestic Tax Authority [Member] Additional shares repurchased (in shares) Treasury Stock, Additional Shares, Acquired Treasury Stock, Additional Shares, Acquired Entity Address, Address Line One Entity Address, Address Line One Value of shares repurchased at cost Treasury Stock, Value, Acquired, Cost Method Application-specific customer solutions Application-Specific Customer Solutions [Member] Application-Specific Customer Solutions [Member] Antidilutive Securities, Name [Domain] Antidilutive Securities, Name [Domain] Subsequent Event [Table] Subsequent Event [Table] Outstanding purchase orders Purchase Commitment, Remaining Minimum Amount Committed Realized Gain (Loss) on Investments Realized Gain (Loss) on Investments [Table Text Block] Weighted- Average Exercise Price Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract] Business Acquisition [Axis] Business Acquisition [Axis] Allowance for credit losses, current Accounts Receivable, Allowance for Credit Loss, Current Subsequent Event Subsequent Event [Member] Derivative [Table] Derivative [Table] Non-current assets Non-current Assets [Member] Non-current Assets Schedule of Intangible Assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Income Statement [Abstract] Income Statement [Abstract] Raw materials Inventory, Raw Materials, Net of Reserves Title of 12(b) Security Title of 12(b) Security Restructuring Cost and Reserve [Line Items] Restructuring Cost and Reserve [Line Items] Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Schedule of Activity in Restructuring Reserve Schedule of Restructuring Reserve by Type of Cost [Table Text Block] Credit loss on investments Debt Securities, Available-for-Sale, Allowance for Credit Loss, Period Increase (Decrease) Derivative liability Net amount of liabilities presented Derivative Liability Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Estimated forfeiture rate for unvested options for CEO Estimated Forfeiture Rate for Unvested Options for CEO Estimated Forfeiture Rate for Unvested Options for CEO Nonvested as of beginning of period (in dollars per share) Nonvested as of end of period (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Tax effect of unrealized gain (loss) on available-for-sale investments OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax Net income per weighted-average common and common-equivalent share: Earnings Per Share, Diluted [Abstract] Share-based Payment Arrangement [Abstract] Share-Based Payment Arrangement [Abstract] Entity Tax Identification Number Entity Tax Identification Number Foreign exchange rate changes Goodwill, Foreign Currency Translation Gain (Loss) Inventories Inventories Inventory, Net Lease, cost Lease, Cost Statistical Measurement [Axis] Statistical Measurement [Axis] Insurance recoveries Insurance Recoveries Balance Sheet Location [Domain] Balance Sheet Location [Domain] Financial Instrument [Axis] Financial Instrument [Axis] Entity Interactive Data Current Entity Interactive Data Current Accrued interest receivable Interest Receivable Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Tax years open to examination by various taxing authorities for other entities Income Tax Examination Years Under Examination Other Entities The tax year(s) being audited in connection with the income tax examination for other entities. Total Shareholder Return Amount Total Shareholder Return Amount Repurchase of common stock Payments for Repurchase of Common Stock Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Japanese Yen Japan, Yen Inventory Disclosure [Abstract] Inventory Disclosure [Abstract] Remaining maturity of foreign currency derivatives (up to) Maximum Remaining Maturity of Foreign Currency Derivatives Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] 3-4 Years Available For Sale Securities Debt Maturities After Three Years Before Four Years Fair Value Available-for-sale securities, debt maturities after third year but before fourth year, fair value. Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] 5-8 Years Available For Sale Securities Debt Maturities After Five Years Available For Sale Securities Debt Maturities After Five Years Retained earnings Retained Earnings (Accumulated Deficit) Measure: Measure [Axis] Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Name Outstanding Recovery, Individual Name Standard products and services Standard Products and Services [Member] Standard Products and Services [Member] Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Mexican Peso Mexico, Pesos Current assets: Assets, Current [Abstract] Product Warranties Disclosures [Abstract] Product Warranties Disclosures [Abstract] Leases [Abstract] Leases [Abstract] Entity Address, State or Province Entity Address, State or Province Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] Unusual or Infrequent Item, or Both [Domain] Unusual or Infrequent Item, or Both [Domain] Cash flows from operating activities: Net Cash Provided by (Used in) Operating Activities [Abstract] 2024 Finite-Lived Intangible Asset, Expected Amortization, Year One Operating lease, payments Operating Lease, Payments Weighted average period to be recognized Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding Costs to fulfill contract Capitalized Contract Cost, Gross PEO PEO [Member] Increase in tax expense related to state income taxes Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount Gross amounts of recognized assets Derivative Asset, Subject to Master Netting Arrangement, before Offset Common stock par value (in dollars per share) Common Stock, Par or Stated Value Per Share Net change related to foreign currency translation adjustments Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Net cash provided by (used in) investing activities Net Cash Provided by (Used in) Investing Activities Schedule of Inventories Schedule of Inventory, Current [Table Text Block] Shares (in thousands) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [Roll Forward] Loss from fire Loss from Catastrophes Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount Effective tax rate Effective Income Tax Rate Reconciliation, Percent Ireland Revenue Commissioners, Ireland [Member] Operating lease liability Operating Lease, Liability Estimated annual forfeiture rate for unvested options for senior management Estimated Forfeiture Rate For Unvested Options For Senior Management Estimated forfeiture rate for unvested options for senior management. Reserve for income taxes Liability for Uncertainty in Income Taxes, Noncurrent Sovereign bonds Sovereign Debt Securities [Member] Total liabilities Liabilities Expected volatility Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Line Items] Stock-Based Compensation Expense Shareholders' Equity and Share-Based Payments [Text Block] Selling, general, and administrative Selling General And Administrative [Member] Selling, general, and administrative. Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Prepaid expenses and other current assets Increase (Decrease) in Prepaid Expense and Other Assets Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Total fair value Debt Securities, Available-for-Sale, Unrealized Loss Position Measurement Frequency [Domain] Measurement Frequency [Domain] All Executive Categories All Executive Categories [Member] Total Cash Cash Equivalents Short Term And Long Term Investments Cash, cash equivalents, short term and long term investments. Increase in tax expense related to transfer pricing and return-to-provision adjustments Effective Income Tax Rate Reconciliation, Other Adjustments, Amount Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Plan Name [Axis] Plan Name [Axis] Amortized cost of non-current investments Debt Securities, Available-for-Sale, Amortized Cost, Noncurrent Long-Lived Tangible Asset [Domain] Long-Lived Tangible Asset [Domain] Tax benefit from compensation expense Share-Based Payment Arrangement, Expense, Tax Benefit Earnings Per Share [Abstract] Earnings Per Share [Abstract] Non-current accrued income taxes Accrued Income Taxes Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Subsequent Event [Line Items] Subsequent Event [Line Items] Stock-based compensation expense Stock or Unit Option Plan Expense Fair value, less than 12 months Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months Greater China CHINA Organization, Consolidation and Presentation of Financial Statements [Abstract] Organization, Consolidation and Presentation of Financial Statements [Abstract] Gross Unrealized Losses and Fair Values for Available-for-Sale Investments Schedule of Unrealized Loss on Investments [Table Text Block] Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] Total current assets Assets, Current Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] All Individuals All Individuals [Member] Other income (expense) Other Nonoperating Income (Expense) Entity Filer Category Entity Filer Category Restructuring Type [Axis] Restructuring Type [Axis] Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Statement [Table] Statement [Table] Current Fiscal Year End Date Current Fiscal Year End Date Stock repurchase program, authorized amount Stock Repurchase Program, Authorized Amount Derivative Instruments and Hedging Activities Disclosures [Line Items] Derivative Instruments and Hedging Activities Disclosures [Line Items] New Pronouncements Accounting Standards Update and Change in Accounting Principle [Text Block] Repurchase of common stock (in shares) Stock Repurchased During Period, Shares Increase in tax expense related to stock-based compensation Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount Income Tax Authority [Axis] Income Tax Authority [Axis] PEO Name PEO Name Preferred stock shares authorized (in shares) Preferred Stock, Shares Authorized Aggregate Intrinsic Value (in thousands) Share Based Compensation Arrangement By Share Based Payment Award Options Additional Disclosures1 [Abstract] ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract] Granted (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value 2028 Finite-Lived Intangible Asset, Expected Amortization, Year Five Schedule of Goodwill Schedule of Goodwill [Table Text Block] Preferred stock shares outstanding (in shares) Preferred Stock, Shares Outstanding Outstanding Forward Contracts Table Outstanding Forward Contracts [Table Text Block] Outstanding forward contracts table. Asset-backed securities Asset-Backed Securities [Member] Net cash provided by (used in) operating activities Net Cash Provided by (Used in) Operating Activities Schedule of Intangible Assets, Future Amortization Expense Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Estimated annual forfeiture rate for unvested options for all other employees Estimated Forfeiture Rate For Unvested Options For All Non Senior Management Estimated forfeiture rate for unvested options for all non-senior management. 1-2 Years Available For Sale Securities Debt Maturities After One Year Before Two Years Fair Value This item represents the fair value of debt securities which are expected to mature within one year of the balance sheet date and which are categorized neither as held-to-maturity nor trading securities. Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Current investments, amortized cost of $120,831 and $223,545 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 Current investments Debt Securities, Available-for-Sale, Current Other Increase (Decrease) in Other Operating Assets and Liabilities, Net Euro Euro Member Countries, Euro Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Beginning balance Ending balance Standard and Extended Product Warranty Accrual Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Allowance for credit losses Debt Securities, Available-for-Sale, Allowance for Credit Loss, Current Total shareholders’ equity Beginning Balance Ending Balance Equity, Attributable to Parent Recognition of revenue deferred in prior period Deferred Revenue, Revenue Recognized Gross realized gains Debt Securities, Available-for-Sale, Realized Gain Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Deferred revenue and customer deposits Increase (Decrease) in Deferred Revenue Restricted Stock Restricted Stock [Member] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Net payments from issuance of common stock under stock plans Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Foreign currency translation adjustments Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Expected term (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term Subsequent Events [Abstract] Subsequent Events [Abstract] Income before income tax expense Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Not Designated as Hedging Instrument Not Designated as Hedging Instrument [Member] Increase in compensation expense due to revised estimated forfeiture rates Increase In Compensation Expense Due To Revised Estimated Forfeiture Rates Increase (decrease) in compensation expense due to revised estimated forfeiture rates. Restructuring Charges Restructuring and Related Activities Disclosure [Text Block] Long-Lived Tangible Asset [Axis] Long-Lived Tangible Asset [Axis] Preferred stock shares issued (in shares) Preferred Stock, Shares Issued Hedging Designation [Domain] Hedging Designation [Domain] Significant Other Observable Inputs (Level 2) Fair Value, Inputs, Level 2 [Member] Entity Emerging Growth Company Entity Emerging Growth Company Fire Fire [Member] Changes in Warranty Obligations Schedule of Product Warranty Liability [Table Text Block] 4-5 Years Available For Sale Securities Debt Maturities After Four Years Before Five Years Fair Value Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value. Derivative Instruments, Gain (Loss) Derivative Instruments, Gain (Loss) [Table Text Block] Increase (Decrease) in Stockholders' Equity Increase (Decrease) in Stockholders' Equity [Roll Forward] Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Document Fiscal Period Focus Document Fiscal Period Focus General Stock Option Plan General Stock Option Plan [Member] General stock option plan. 2024 Lessee, Operating Lease, Liability, to be Paid, Year One Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Antidilutive Securities [Axis] Antidilutive Securities [Axis] 2027 Lessee, Operating Lease, Liability, to be Paid, Year Four Title Trading Arrangement, Individual Title Outstanding (in dollars per shares) Outstanding (in dollars per shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price Revenue from External Customers by Geographic Areas Revenue from External Customers by Geographic Areas [Table Text Block] Common Stock Common Stock [Member] Foreign Tax Authority Foreign Tax Authority [Member] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures Long-term investments Debt Securities, Available-for-Sale, Noncurrent Individual: Individual [Axis] City Area Code City Area Code Entity Address, Postal Zip Code Entity Address, Postal Zip Code Product and Service [Axis] Product and Service [Axis] Weighted-Average Shares Earnings Per Share [Text Block] Income Statement Location [Domain] Income Statement Location [Domain] Foreign exchange rate changes Deferred Revenue, Foreign Currency Exchange Adjustment Deferred Revenue, Foreign Currency Exchange Adjustment Document Fiscal Year Focus Document Fiscal Year Focus Geographical [Domain] Geographical [Domain] Term of contract Lessee, Operating Lease, Term of Contract Hungarian Forint Hungary, Forint Minimum Minimum [Member] Property, plant, and equipment, net Property, Plant and Equipment, Net Weighted-average common and common-equivalent shares outstanding: Weighted Average Number of Shares Outstanding, Diluted [Abstract] Share Repurchase Program [Domain] Share Repurchase Program [Domain] Summary of Stock Option Activity Share-Based Payment Arrangement, Option, Activity [Table Text Block] Exercise Price Award Exercise Price Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Cash dividends per common share (usd per share) Common Stock, Dividends, Per Share, Cash Paid Estimated insurance recoveries Estimated Insurance Recoveries Cash Cash Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Equity, Class of Treasury Stock [Line Items] Equity, Class of Treasury Stock [Line Items] ASSETS Assets [Abstract] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Goodwill and Intangible Assets Disclosure [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Schedule of Derivative Instruments in Statement of Financial Position, Fair Value Schedule of Derivative Instruments in Statement of Financial Position, Fair Value [Table Text Block] Foreign currency gain (loss) Gain (Loss), Foreign Currency Transaction, before Tax Other current assets Other Current Assets [Member] Treasury bills US Treasury Securities [Member] Net cash provided by (used in) financing activities Net Cash Provided by (Used in) Financing Activities Deferred income taxes Deferred Income Tax Assets, Net Lessee, Lease, Description [Line Items] Lessee, Lease, Description [Line Items] Commitments and Contingencies Commitments and Contingencies Disclosure [Text Block] Completed technologies Developed Technology Rights [Member] Unusual or Infrequent Item, or Both [Axis] Unusual or Infrequent Item, or Both [Axis] Retained Earnings Retained Earnings [Member] Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Amortization of discounts or premiums on investments Accretion (Amortization) of Discounts and Premiums, Investments Total liabilities and shareholders' equity Liabilities and Equity Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost Other assets Other Assets, Noncurrent Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Risk-free rate Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate Operating lease assets Operating Lease, Right-of-Use Asset Basic (usd per share) Earnings Per Share, Basic Accounting Policies [Abstract] Accounting Policies [Abstract] One-time Termination Benefits One-time Termination Benefits [Member] Class of Treasury Stock [Table] Class of Treasury Stock [Table] Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] (Gain) loss on disposal of property, plant, and equipment Gain (Loss) on Disposition of Assets China State Administration of Taxation, China [Member] Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Warranty Obligations Product Warranty Disclosure [Text Block] Currency [Axis] Currency [Axis] Remainder of fiscal 2023 Lessee, Operating Lease, Liability, to be Paid, Remainder of Fiscal Year Stock Repurchased During Prior Period, Settled in Current Period Stock Repurchased During Prior Period, Settled in Current Period Stock Repurchased During Prior Period, Settled in Current Period Arrangement Duration Trading Arrangement Duration Components of Cash, Cash Equivalents, and Investments Components Of Cash Cash Equivalents And Investments [Table Text Block] Components of cash cash equivalents and investments. Entity Address, City or Town Entity Address, City or Town Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Options vested or expected to vest (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term Options vested or expected to vest as of reporting date (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number Schedule of Cash and Cash Equivalents [Table] Schedule of Cash and Cash Equivalents [Table] Business Acquisition, Effective Date of Acquisition Business Acquisition, Effective Date of Acquisition Option to renew, term of contract Lessee, Operating Lease, Option to Renew, Term of Contract Lessee, Operating Lease, Option to Renew, Term of Contract Chinese Renminbi China, Yuan Renminbi Document Transition Report Document Transition Report Award Timing Predetermined Award Timing Predetermined [Flag] Remaining authorized repurchase amount Stock Repurchase Program, Remaining Authorized Repurchase Amount Derivative Instruments and Hedging Activities Disclosures [Table] Derivative Instruments and Hedging Activities Disclosures [Table] Termination Date Trading Arrangement Termination Date Cost of revenue Cost of Goods and Service Benchmark [Member] Accounts payable Increase (Decrease) in Accounts Payable Common stock shares authorized (in shares) Common Stock, Shares Authorized Americas Americas [Member] Financial assets at fair value Fair Value Total Debt Securities, Available-for-Sale Loss (Recovery) from Fire Loss (Recovery) From Catastrophe [Text Block] Loss (Recovery) From Catastrophe Korea KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF Lease components Lessee, Operating Lease, Components Lessee, Operating Lease, Components Unusual or Infrequent Items, or Both [Abstract] Gross Unrealized Gains Debt Securities, Available-for-Sale, Accumulated Gross Unrealized Gain, before Tax 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] Short-Term Investments Short-Term Investments [Member] Derivative Instrument [Axis] Derivative Instrument [Axis] Increase in tax expense to establish reserve against certain deferred tax assets Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount Adjustments to reconcile net income to net cash provided by (used in) operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] All Trading Arrangements All Trading Arrangements [Member] Unusual or Infrequent Item, or Both [Table] Unusual or Infrequent Item, or Both [Table] All Adjustments to Compensation All Adjustments to Compensation [Member] Restructuring Reserve [Roll Forward] Restructuring Reserve [Roll Forward] Derivative [Line Items] Derivative [Line Items] Common stock, $.002 par value – Authorized: 300,000 shares in 2023 and 2022, respectively; issued and outstanding: 172,142 and 172,631 shares in 2023 and 2022, respectively Common Stock, Value, Outstanding Award Timing Disclosures [Line Items] Current assets Current Assets [Member] Current Assets Compensation Amount Outstanding Recovery Compensation Amount Increases to the allowance for credit losses Accounts Receivable, Credit Loss Expense (Reversal) Derivative asset Net amount of assets presented Derivative Asset Forfeited or expired (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value Subsequent Event Type [Axis] Subsequent Event Type [Axis] Restructuring Plan [Axis] Restructuring Plan [Axis] Statement of Comprehensive Income [Abstract] Statement of Comprehensive Income [Abstract] Repurchase Program March 2022 Repurchase Program March 2022 [Member] Repurchase Program March 2022 Share-based Payment Arrangement, Expensed and Capitalized, Amount [Table] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table] Expiration period from grant day Expiration Period Of Stock Option Plan Expiration period of stock option plan. Prepaid expenses and other current assets Prepaid Expense and Other Assets, Current 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Three Foreign currency translation adjustments: Currency translation adjustments [Abstract] Currency translation adjustments [Abstract] Forfeited or expired (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period Municipal bonds Municipal Bonds [Member] Insider Trading Arrangements [Line Items] Balance as of December 31, 2022 Balance as of October 1, 2023 Accounts Receivable, Allowance for Credit Loss Balance as of December 31, 2022 Balance as of October 1, 2023 Deferred Revenue Outstanding Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value Movement in Standard Product Warranty Accrual [Roll Forward] Movement in Standard Product Warranty Accrual [Roll Forward] Entity Registrant Name Entity Registrant Name Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] Award Timing Method Award Timing Method [Text Block] 2025 Finite-Lived Intangible Asset, Expected Amortization, Year Two Adjustment to Compensation, Amount Adjustment to Compensation Amount 27,000 square-foot premises 27,000 Square-Foot Premises [Member] 27,000 Square-Foot Premises Cash payments Payments for Restructuring Document Period End Date Document Period End Date Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Adoption Date Trading Arrangement Adoption Date Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] Assets and Liabilities Measured at Fair Value on a Recurring Basis Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block] Exercisable as of reporting date (in dollars per shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price Schedule of Allowance for Credit Loss Activity Accounts Receivable, Allowance for Credit Loss [Table Text Block] Entity Central Index Key Entity Central Index Key Liabilities: Liabilities, Fair Value Disclosure [Abstract] Gains (losses) recognized in current operations Derivative, Gain (Loss) on Derivative, Net Stock-based compensation expense Share-Based Payment Arrangement, Expense Decrease in compensation expense due to revised estimated forfeiture rates Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Gross Carrying Value Finite-Lived Intangible Assets, Gross Income tax expense Income Tax Expense (Benefit) Finished goods Inventory, Finished Goods, Net of Reserves Write-offs, net of recoveries Accounts Receivable, Allowance for Credit Loss, Writeoff Income Tax Authority [Domain] Income Tax Authority [Domain] Fair Value Measurements Fair Value Disclosures [Text Block] Name Trading Arrangement, Individual Name Tax years open to examination by Internal Revenue Service Tax Years Open To Examination By Internal Revenue Service Tax Years Open To Examination By Internal Revenue Service Cash and Cash Equivalents [Abstract] Cash and Cash Equivalents [Abstract] Other comprehensive income (loss), net of tax Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Unrealized losses, 12 months or greater Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss Equity [Abstract] Equity [Abstract] Insurance recoveries, business interruption Insurance Recoveries, Business Interruption Insurance Recoveries, Business Interruption Debt Securities, Available-for-sale Debt Securities, Available-for-Sale [Line Items] Inventories Inventory Disclosure [Text Block] Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations Reclassification of net realized (gain) loss on the sale of available-for-sale investments Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax Weighted average remaining lease term Operating Lease, Weighted Average Remaining Lease Term Revenue Revenue from Contract with Customer, Excluding Assessed Tax Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Rentable area Net Rentable Area Cash and Cash Equivalents [Line Items] Cash and Cash Equivalents [Line Items] Amendment Flag Amendment Flag Intangible Assets Intangible Assets Disclosure [Text Block] Change in deferred income taxes Increase (Decrease) in Deferred Income Taxes Unrealized losses, less than 12 months Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss Cash and cash equivalents Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Movement in Deferred Revenue [Roll Forward] Movement in Deferred Revenue [Roll Forward] Weighted average discount rate Operating Lease, Weighted Average Discount Rate, Percent Net issuance of common stock under stock plans (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Shares Issued in Period Indefinite-lived intangible asset excluding in-process technologies Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member] Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member] less than 1 year Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One Assets: Assets, Fair Value Disclosure [Abstract] 2001 Plan and 2007 Plan Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans [Member] Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans Shares repurchased (in shares) Treasury Stock, Shares, Acquired Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Goodwill Goodwill Disclosure [Text Block] Returned customer deposit Deferred Revenue, Refund Payments Diluted (shares) Weighted-average common and common-equivalent shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Diluted Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Recognized period costs capitalized Employee Service, Share-Based Compensation Recognized, Period Costs, Capitalized Amount Employee service share based compensation recognized period costs capitalized amount. Decrease in tax expense arising from tax settlement Effective Income Tax Rate Reconciliation, Tax Settlement, Amount Income Tax Authority, Name [Axis] Income Tax Authority, Name [Axis] Money market instruments Money Market Funds, at Carrying Value Additional shares available for grant under stock option plans (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized Revenue Recognition Revenue from Contract with Customer [Text Block] Gross realized losses Debt Securities, Available-for-Sale, Realized Loss Purchases of property, plant, and equipment Payments to Acquire Property, Plant, and Equipment Company Selected Measure Amount Company Selected Measure Amount Additional paid-in capital Additional Paid in Capital, Common Stock Repurchase Program March 2020 Repurchase Program March 2020 [Member] Repurchase Program March 2020 [Member] Additional Paid-in Capital Additional Paid-in Capital [Member] Moritex Corporation Moritex Corporation [Member] Moritex Corporation Balance Sheet Location [Axis] Balance Sheet Location [Axis] Total assets Assets Name Awards Close in Time to MNPI Disclosures, Individual Name Share Repurchase Program [Axis] Share Repurchase Program [Axis] Southborough, Massachusetts Southborough, Massachusetts [Member] Southborough, Massachusetts Cover [Abstract] Cover [Abstract] Total intrinsic value Shares Based Compensation Arrangement By Shares Based Payment Award Options Exercisable Intrinsic Value Shares based compensation arrangement by shares based payment award options exercisable intrinsic value. Investment income Investment Income, Nonoperating Subsequent Events Subsequent Events [Text Block] Stock-based compensation expense APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Recurring Fair Value, Recurring [Member] Restructuring and Related Activities [Abstract] Restructuring and Related Activities [Abstract] Other liabilities Other Liabilities, Noncurrent Vested (in dollars per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value Agency bonds Agency Bonds [Member] Agency bond. Non-NEOs Non-NEOs [Member] Forfeited or expired (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period Future lease payments Total Lessee, Operating Lease, Liability, to be Paid Income Tax Contingency [Line Items] Income Tax Contingency [Line Items] Cash, Cash Equivalents, and Investments Cash and Cash Equivalents Disclosure [Text Block] Net change in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Income Tax Authority, Name [Domain] Income Tax Authority, Name [Domain] Cash flows from financing activities: Net Cash Provided by (Used in) Financing Activities [Abstract] Non-PEO NEO Non-PEO NEO [Member] Equity Component [Domain] Equity Component [Domain] Adjustment to Compensation: Adjustment to Compensation [Axis] Offsetting Assets Offsetting Assets [Table Text Block] Work-in-process Inventory, Work in Process, Net of Reserves Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Discrete tax expense (benefit) Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount Allowance for credit losses, non-current Debt Securities, Available-for-Sale, Allowance for Credit Loss, Noncurrent Basic (shares) Basic weighted-average common shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Basic Entity Current Reporting Status Entity Current Reporting Status Operating income Operating Income (Loss) Net realized gains (losses) Realized Investment Gains (Losses) Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract] Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract] Revenue from External Customers by Products and Services [Table] Revenue from External Customers by Products and Services [Table] Other comprehensive income (loss), net of tax: Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract] Singapore SINGAPORE Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Statement [Line Items] Statement [Line Items] Available-for-sale investments: Other Comprehensive Income (Loss), Net of Tax [Abstract] Schedule of Nonvested Performance-based Units Activity Schedule of Nonvested Performance-Based Units Activity [Table Text Block] Weighted- Average Remaining Contractual Term (in years) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract] Loss (recovery) from fire (Note 17) Loss (Gain) From Catastrophes Loss (Gain) From Catastrophes Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Type of Restructuring [Domain] Type of Restructuring [Domain] Exercisable Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Exercisable, Aggregate Intrinsic Value Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value. EX-101.PRE 10 cgnx-20231001_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.3
Cover Page
9 Months Ended
Oct. 01, 2023
shares
Cover [Abstract]  
Document Type 10-Q
Document Quarterly Report true
Document Transition Report false
Entity File Number 001-34218
Entity Registrant Name COGNEX CORP
Entity Incorporation, State or Country Code MA
Entity Tax Identification Number 04-2713778
Entity Address, Address Line One One Vision Drive
Entity Address, City or Town Natick
Entity Address, State or Province MA
Entity Address, Postal Zip Code 01760
City Area Code 508
Local Phone Number 650-3000
Title of 12(b) Security Common Stock, par value $.002 per share
Trading Symbol CGNX
Security Exchange Name NASDAQ
Entity Current Reporting Status Yes
Entity Interactive Data Current Yes
Entity Filer Category Large Accelerated Filer
Entity Small Business false
Entity Emerging Growth Company false
Entity Shell Company false
Entity Common Stock, Shares Outstanding 172,142,092
Document Period End Date Oct. 01, 2023
Entity Central Index Key 0000851205
Current Fiscal Year End Date --12-31
Document Fiscal Year Focus 2023
Document Fiscal Period Focus Q3
Amendment Flag false
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statements of Operations - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Income Statement [Abstract]        
Revenue $ 197,241 $ 209,622 $ 640,877 $ 766,657
Cost of revenue 54,467 57,383 174,680 214,316
Gross margin 142,774 152,239 466,197 552,341
Research, development, and engineering expenses 32,580 33,954 104,707 103,999
Selling, general, and administrative expenses 82,307 75,371 248,767 236,156
Loss (recovery) from fire (Note 17) (2,750) 2,891 (5,250) 20,294
Operating income 30,637 40,023 117,973 191,892
Foreign currency gain (loss) (8,699) (1,880) (9,910) (4,367)
Investment income 4,891 1,416 12,573 4,389
Other income (expense) 173 (214) 358 (450)
Income before income tax expense 27,002 39,345 120,994 191,464
Income tax expense 8,086 5,365 18,989 31,250
Net income $ 18,916 $ 33,980 $ 102,005 $ 160,214
Net income per weighted-average common and common-equivalent share:        
Basic (usd per share) $ 0.11 $ 0.20 $ 0.59 $ 0.92
Diluted (usd per share) $ 0.11 $ 0.19 $ 0.59 $ 0.91
Weighted-average common and common-equivalent shares outstanding:        
Basic (shares) 172,169 173,256 172,408 173,640
Diluted (shares) 173,354 174,327 173,659 175,233
Cash dividends per common share (usd per share) $ 0.070 $ 0.065 $ 0.210 $ 0.195
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statements of Comprehensive Income - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Statement of Comprehensive Income [Abstract]        
Net income $ 18,916 $ 33,980 $ 102,005 $ 160,214
Available-for-sale investments:        
Net unrealized gain (loss) on available-for-sale investments, net of tax 738 (5,315) 4,458 (21,185)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations 624 79 624 103
Net change related to available-for-sale investments 1,362 (5,236) 5,082 (21,082)
Foreign currency translation adjustments:        
Foreign currency translation adjustments (2,603) (7,352) (5,828) (13,425)
Net change related to foreign currency translation adjustments (2,603) (7,352) (5,828) (13,425)
Other comprehensive income (loss), net of tax (1,241) (12,588) (746) (34,507)
Total comprehensive income $ 17,675 $ 21,392 $ 101,259 $ 125,707
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statements of Comprehensive Income (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Statement of Comprehensive Income [Abstract]        
Tax effect of unrealized gain (loss) on available-for-sale investments $ 707 $ (1,564) $ 1,981 $ (6,298)
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Balance Sheets - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 395,501 $ 181,374
Current investments, amortized cost of $120,831 and $223,545 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 117,147 218,759
Accounts receivable, allowance for credit losses of $580 and $730 in 2023 and 2022, respectively 130,542 125,417
Unbilled revenue 1,588 2,179
Inventories 133,866 122,480
Prepaid expenses and other current assets 68,347 67,490
Total current assets 846,991 717,699
Non-current investments, amortized cost of $349,060 and $476,148 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022 332,991 454,117
Property, plant, and equipment, net 82,965 79,714
Operating lease assets 66,760 37,682
Goodwill 241,042 242,630
Intangible assets, net 9,986 12,414
Deferred income taxes 403,013 407,241
Other assets 6,151 6,643
Total assets 1,989,899 1,958,140
Current liabilities:    
Accounts payable 23,053 27,103
Accrued expenses 79,121 93,235
Accrued income taxes 19,302 18,129
Deferred revenue and customer deposits 40,246 40,787
Operating lease liabilities 7,982 8,454
Total current liabilities 169,704 187,708
Non-current operating lease liabilities 60,450 31,298
Deferred income taxes 233,360 249,961
Reserve for income taxes 19,450 15,866
Non-current accrued income taxes 18,337 33,008
Other liabilities 0 1,905
Total liabilities 501,301 519,746
Commitments and Contingencies
Shareholders’ equity:    
Preferred stock, $.01 par value – Authorized: 400 shares in 2023 and 2022, respectively; no shares issued and outstanding 0 0
Common stock, $.002 par value – Authorized: 300,000 shares in 2023 and 2022, respectively; issued and outstanding: 172,142 and 172,631 shares in 2023 and 2022, respectively 344 345
Additional paid-in capital 1,023,960 979,167
Retained earnings 534,337 528,179
Accumulated other comprehensive loss, net of tax (70,043) (69,297)
Total shareholders’ equity 1,488,598 1,438,394
Total liabilities and shareholders' equity $ 1,989,899 $ 1,958,140
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Balance Sheets (Parenthetical) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Statement of Financial Position [Abstract]    
Amortized cost of current investments $ 120,831 $ 223,545
Allowance for credit losses 0 0
Allowance for credit losses, current 580 730
Amortized cost of non-current investments 349,060 476,148
Allowance for credit losses, non-current $ 0 $ 0
Preferred stock par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock shares authorized (in shares) 400,000 400,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.002 $ 0.002
Common stock shares authorized (in shares) 300,000,000 300,000,000
Common stock, shares issued (in shares) 172,142,000 172,631,000
Common stock, shares outstanding (in shares) 172,142,000 172,631,000
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Cash flows from operating activities:    
Net income $ 102,005 $ 160,214
Adjustments to reconcile net income to net cash provided by (used in) operating activities:    
Stock-based compensation expense 41,518 41,419
Depreciation of property, plant, and equipment 12,557 12,176
(Gain) loss on disposal of property, plant, and equipment (2) 12
Amortization of intangible assets 2,428 2,468
Excess and obsolete inventory charges 1,703 2,728
Non-cash impact of write-offs related to fire (Note 17) 0 45,827
Amortization of discounts or premiums on investments 1,347 3,976
Realized (gain) loss on sale of investments 624 103
Change in deferred income taxes (14,691) (14,799)
Accounts receivable (6,488) 31,018
Unbilled revenue 534 1,760
Inventories (12,954) (35,815)
Prepaid expenses and other current assets (2,007) (46,817)
Accounts payable (3,986) (21,577)
Accrued expenses (13,214) (23,813)
Accrued income taxes (13,513) (6,644)
Deferred revenue and customer deposits (151) 20,882
Other 2,715 4,031
Net cash provided by (used in) operating activities 98,425 177,149
Cash flows from investing activities:    
Purchases of investments (174,330) (77,760)
Maturities and sales of investments 402,160 215,876
Purchases of property, plant, and equipment (16,062) (15,605)
Net cash provided by (used in) investing activities 211,768 122,511
Cash flows from financing activities:    
Net payments from issuance of common stock under stock plans 3,276 4,225
Repurchase of common stock (59,640) (178,387)
Payment of dividends (36,209) (33,837)
Net cash provided by (used in) financing activities (92,573) (207,999)
Effect of foreign exchange rate changes on cash and cash equivalents (3,493) (11,818)
Net change in cash and cash equivalents 214,127 79,843
Cash and cash equivalents at beginning of period 181,374 186,161
Cash and cash equivalents at end of period $ 395,501 $ 266,004
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statement of Shareholders' Equity - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock
Additional Paid-in Capital
Retained Earnings
Accumulated Other Comprehensive Loss
Beginning Balance (in shares) at Dec. 31, 2021   175,481      
Beginning Balance at Dec. 31, 2021 $ 1,430,093 $ 351 $ 914,802 $ 562,882 $ (47,942)
Increase (Decrease) in Stockholders' Equity          
Net issuance of common stock under stock plans (in shares)   256      
Net issuance of common stock under stock plans 4,225 $ 0 4,225    
Repurchase of common stock (in shares)   (2,807)      
Repurchase of common stock (178,387) $ (5)   (178,382)  
Stock-based compensation expense 41,419   41,419    
Payment of dividends (33,837)     (33,837)  
Net income 160,214     160,214  
Net unrealized gain (loss) on available-for-sale investments, net of tax (21,185)       (21,185)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments 103       103
Foreign currency translation adjustment (13,425)       (13,425)
Ending Balance (in shares) at Oct. 02, 2022   172,930      
Ending Balance at Oct. 02, 2022 1,389,220 $ 346 960,446 510,877 (82,449)
Beginning Balance (in shares) at Jul. 03, 2022   173,397      
Beginning Balance at Jul. 03, 2022 1,389,985 $ 347 947,269 512,230 (69,861)
Increase (Decrease) in Stockholders' Equity          
Net issuance of common stock under stock plans (in shares)   73      
Net issuance of common stock under stock plans (189) $ 0 (189)    
Repurchase of common stock (in shares)   (540)      
Repurchase of common stock (24,070) $ (1)   (24,069)  
Stock-based compensation expense 13,366   13,366    
Payment of dividends (11,264)     (11,264)  
Net income 33,980     33,980  
Net unrealized gain (loss) on available-for-sale investments, net of tax (5,315)       (5,315)
Reclassification of net realized (gain) loss on the sale of available-for-sale investments 79       79
Foreign currency translation adjustment (7,352)       (7,352)
Ending Balance (in shares) at Oct. 02, 2022   172,930      
Ending Balance at Oct. 02, 2022 $ 1,389,220 $ 346 960,446 510,877 (82,449)
Beginning Balance (in shares) at Dec. 31, 2022 172,631 172,631      
Beginning Balance at Dec. 31, 2022 $ 1,438,394 $ 345 979,167 528,179 (69,297)
Increase (Decrease) in Stockholders' Equity          
Net issuance of common stock under stock plans (in shares)   668      
Net issuance of common stock under stock plans 3,276 $ 1 3,275    
Repurchase of common stock (in shares)   (1,157)      
Repurchase of common stock (59,640) $ (2)   (59,638)  
Stock-based compensation expense 41,518   41,518    
Payment of dividends (36,209)     (36,209)  
Net income 102,005     102,005  
Net unrealized gain (loss) on available-for-sale investments, net of tax 4,458       4,458
Reclassification of net realized (gain) loss on the sale of available-for-sale investments 624       624
Foreign currency translation adjustment $ (5,828)       (5,828)
Ending Balance (in shares) at Oct. 01, 2023 172,142 172,142      
Ending Balance at Oct. 01, 2023 $ 1,488,598 $ 344 1,023,960 534,337 (70,043)
Beginning Balance (in shares) at Jul. 02, 2023   172,293      
Beginning Balance at Jul. 02, 2023 1,480,463 $ 345 1,010,973 537,947 (68,802)
Increase (Decrease) in Stockholders' Equity          
Net issuance of common stock under stock plans (in shares)   40      
Net issuance of common stock under stock plans 622 $ 0 622    
Repurchase of common stock (in shares)   (191)      
Repurchase of common stock (10,478) $ (1)   (10,477)  
Stock-based compensation expense 12,365   12,365    
Payment of dividends (12,049)     (12,049)  
Net income 18,916     18,916  
Net unrealized gain (loss) on available-for-sale investments, net of tax 738       738
Reclassification of net realized (gain) loss on the sale of available-for-sale investments 624       624
Foreign currency translation adjustment $ (2,603)       (2,603)
Ending Balance (in shares) at Oct. 01, 2023 172,142 172,142      
Ending Balance at Oct. 01, 2023 $ 1,488,598 $ 344 $ 1,023,960 $ 534,337 $ (70,043)
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.3
Consolidated Statement of Shareholders' Equity (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Statement of Stockholders' Equity [Abstract]        
Cash dividends per common share (usd per share) $ 0.070 $ 0.065 $ 0.210 $ 0.195
Tax effect of unrealized gain (loss) on available-for-sale investments $ 707 $ (1,564) $ 1,981 $ (6,298)
XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.3
Summary of Significant Accounting Policies
9 Months Ended
Oct. 01, 2023
Accounting Policies [Abstract]  
Summary of Significant Accounting Policies Summary of Significant Accounting Policies
As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form 10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP). Reference should be made to the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 for a full description of other significant accounting policies.
In the opinion of the management of Cognex Corporation (the "Company"), the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments, adjustments related to losses and recoveries from the fire (Note 17), and financial statement reclassifications necessary to present fairly the Company’s financial position as of October 1, 2023, and the results of its operations for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022, and changes in shareholders’ equity, comprehensive income, and cash flows for the periods presented.
The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended October 1, 2023 are not necessarily indicative of the results to be expected for the full year.
XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.3
New Pronouncements
9 Months Ended
Oct. 01, 2023
Organization, Consolidation and Presentation of Financial Statements [Abstract]  
New Pronouncements New Pronouncements
Accounting Standards Update (ASU) 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting", (ASU) 2021-01, "Reference Rate Reform (Topic 848): Scope", and Accounting Standards Update (ASU) 2022-06, "Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848"
The amendments in these ASUs apply to all entities that have contracts, hedging relationships, and other transactions that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. Together, the ASUs provide optional expedients and exceptions for applying generally accepted accounting principles (GAAP) to contracts, hedging relationships, and other transactions affected by reference rate reform if certain criteria are met. The expedients and exceptions provided by the amendments do not apply to contract modifications made and hedging relationships entered into or evaluated after December 31, 2024, except for hedging relationships existing as of December 31, 2024 that an entity has elected certain optional expedients for and that are retained through the end of the hedging relationship. The amendments in these ASUs are effective for all entities as of March 12, 2020 through December 31, 2024. Management adopted Topic 848 on January 1, 2023, and now uses the Secured Overnight Financing Rate (SOFR). The adoption did not have a material impact on the Company's financial statements and disclosures.
XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.3
Fair Value Measurements
9 Months Ended
Oct. 01, 2023
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis
The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of October 1, 2023 (in thousands):
Quoted Prices in
Active Markets
for Identical
Assets (Level 1)
Significant Other
Observable
Inputs (Level 2)
Unobservable Inputs (Level 3)
Assets:
Money market instruments$241,716 $— $— 
Corporate bonds— 349,405 — 
Treasury bills— 61,742 — 
Asset-backed securities— 37,051 — 
Sovereign bonds— 1,940 — 
Economic hedge forward contracts— 196 — 
Liabilities:
Economic hedge forward contracts— 128 — 
The Company’s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1.
The Company’s debt securities and forward contracts are reported at fair value based on model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2. Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service. For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data. They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations. The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency. The market participants are generally large commercial banks.
Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis
Non-financial assets, such as property, plant and equipment, operating lease assets, goodwill, and intangible assets, are required to be measured at fair value only when an impairment loss is recognized. The Company did not record impairment charges related to non-financial assets during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.
XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments
9 Months Ended
Oct. 01, 2023
Cash and Cash Equivalents [Abstract]  
Cash, Cash Equivalents, and Investments Cash, Cash Equivalents, and Investments
Cash, cash equivalents, and investments consisted of the following (in thousands):
October 1, 2023December 31, 2022
Cash$153,785 $180,959 
Money market instruments241,716 415 
Cash and cash equivalents395,501 181,374 
Corporate bonds110,627 164,055 
Asset-backed securities3,084 26,890 
Treasury bills2,457 11,332 
Sovereign bonds979 — 
Agency bonds 15,858 
Municipal bonds 624 
Current investments117,147 218,759 
Corporate bonds238,778 374,440 
Treasury bills59,285 44,214 
Asset-backed securities33,967 33,539 
Sovereign bonds961 1,924 
Non-current investments332,991 454,117 
$845,639 $854,250 
Corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; treasury bills consist of debt securities issued by the U.S. government; sovereign bonds consist of direct debt issued by foreign governments; agency bonds consist of domestic or foreign obligations of government agencies and government-sponsored enterprises that have government backing; and municipal bonds consist of debt securities issued by state and local government entities. All of the Company's securities as of October 1, 2023 and December 31, 2022 were denominated in U.S. Dollars.
Accrued interest receivable is recorded in "Prepaid expenses and other current assets" on the Consolidated Balance Sheets and amounted to $4,094,000 and $3,620,000 as of October 1, 2023 and December 31, 2022, respectively.
The following table summarizes the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
Amortized
Cost
Gross
Unrealized
Gains
Gross
Unrealized
Losses
Fair Value
Current:
Corporate bonds$114,188 $— $(3,561)$110,627 
Asset-backed securities3,128 — (44)3,084 
Treasury bills2,498 — (41)2,457 
Sovereign bonds1,017 — (38)979 
Non-current:
Corporate bonds251,635 (12,866)238,778 
Treasury bills60,871 — (1,586)59,285 
Asset-backed securities35,512 — (1,545)33,967 
Sovereign bonds1,042 — (81)961 
$469,891 $9 $(19,762)$450,138 
The following table summarizes the Company’s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of October 1, 2023 (in thousands):
 Unrealized Loss Position For: 
 Less than 12 Months12 Months or GreaterTotal
 Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Corporate bonds$103,100 $(2,900)$244,535 $(13,527)$347,635 $(16,427)
Treasury bills56,878 (1,492)4,864 (135)61,742 (1,627)
Asset-backed securities32,425 (1,465)4,626 (124)37,051 (1,589)
Sovereign bonds— — 1,940 (119)1,940 (119)
$192,403 $(5,857)$255,965 $(13,905)$448,368 $(19,762)
Management monitors debt securities that are in an unrealized loss position to determine whether a loss exists related to the credit quality of the issuer. When developing an estimate of expected credit losses, management considers all relevant information including historical experience, current conditions, and reasonable forecasts of expected future cash flows. Based on this evaluation, no allowance for credit losses on debt securities was recorded as of October 1, 2023 or December 31, 2022. There was no activity recorded in the allowance for credit losses during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.
The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Gross realized gains$109 $— $109 $133 
Gross realized losses(733)(79)(733)(236)
Net realized gains (losses)$(624)$(79)$(624)$(103)
Realized gains and losses are included in "Investment income" on the Consolidated Statements of Operations. Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, were recorded in shareholders’ equity as accumulated other comprehensive income (loss).
The following table presents the effective maturity dates of the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
<1 year1-2 Years2-3 Years3-4 Years4-5 Years5-8 YearsTotal
Corporate bonds$110,627 $95,497 $65,409 $34,878 $42,539 $455 $349,405 
Treasury bills2,457 5,306 15,016 21,842 17,121 — 61,742 
Asset-backed securities3,084 12,722 10,584 3,978 — 6,683 37,051 
Sovereign bonds979 — 961 — — — 1,940 
$117,147 $113,525 $91,970 $60,698 $59,660 $7,138 $450,138 
XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.3
Inventories
9 Months Ended
Oct. 01, 2023
Inventory Disclosure [Abstract]  
Inventories Inventories
Inventories consisted of the following (in thousands):
October 1, 2023December 31, 2022
Raw materials$80,091 $71,720 
Work-in-process1,712 906 
Finished goods52,063 49,854 
$133,866 $122,480 
XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.3
Leases
9 Months Ended
Oct. 01, 2023
Leases [Abstract]  
Leases Leases
The Company's leases are primarily leased properties across different worldwide locations where the Company conducts its operations. All of these leases are classified as operating leases. Certain leases may contain options to extend or terminate the lease at the Company's sole discretion.
As of October 1, 2023, there were no options to terminate and twenty-nine options to extend that were accounted for in the determination of the lease term for outstanding leases. Certain leases contain leasehold improvement incentives, retirement obligations, escalating clauses, rent holidays, and variable payments tied to a consumer price index. There were no restrictions or covenants for outstanding leases as of October 1, 2023.
The total operating lease expense for the three-month and nine-month periods ended October 1, 2023 was $5,512,000 and $8,151,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 1, 2023 were $5,168,000 and $7,532,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 1, 2023 was $132,000 and $292,000, respectively.
The total operating lease expense for the three-month and nine-month periods ended October 2, 2022 was $2,255,000 and $6,699,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 2, 2022 were $2,161,000 and $6,467,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 2, 2022 was $35,000 and $110,000, respectively.
Future operating lease cash payments are as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$2,510 
202411,580 
20259,677 
20267,799 
20277,231 
20286,992 
Thereafter46,421 
$92,210 
The discounted present value of the future lease cash payments resulted in a total lease liability of $68,432,000 and $39,752,000 as of October 1, 2023 and December 31, 2022, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of October 1, 2023.
In June 2023, the Company entered into a lease for a 115,000 square-foot building in Singapore to serve as a new distribution center for customers in Asia. The lease contains two components, including a 88,000 square-foot premises with a term of ten years, six months. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. This lease component commenced during the second quarter of 2023, and therefore the Company recorded approximately $29,639,000, which reflects an estimated extension period of five years, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date. The second component of this Singapore lease is for a 27,000 square-foot premises with a term of eight years. The commencement date for this lease component is in the fourth quarter of 2025, and therefore it was not yet recorded on the Consolidated Balance Sheets, nor did it create any significant rights and obligations as of October 1, 2023. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. Future payment obligations associated with this lease component total $13,231,000, none of which is payable in 2023 and which reflects an estimated extension period of five years. Future payment obligations related to this lease component are not included in the future operating lease cash payments table above.
In December 2021, the Company entered into a lease for a 65,000 square-foot building in Southborough, Massachusetts for a term of ten years to serve as a new distribution center for customers in the Americas. The Company has the right and option to extend the term of this lease for an additional period of five years, commencing upon the expiration of the original ten-year term. This lease commenced during the first quarter of 2022, and therefore the Company recorded approximately $9,271,000, which does not reflect an estimated extension period, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date.
The weighted-average discount rate was 5.4% and 3.3% for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively. The weighted-average remaining lease term was 10.8 and 7.8 years for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively.
XML 26 R16.htm IDEA: XBRL DOCUMENT v3.23.3
Goodwill
9 Months Ended
Oct. 01, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill Goodwill
The changes in the carrying value of goodwill were as follows (in thousands):
Balance as of December 31, 2022$242,630 
  Foreign exchange rate changes(1,588)
Balance as of October 1, 2023$241,042 
XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.3
Intangible Assets
9 Months Ended
Oct. 01, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Intangible Assets Intangible Assets
Amortized intangible assets consisted of the following (in thousands):
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(19,590)$8,427 
Customer relationships5,838 (4,400)1,438 
Non-compete agreements340 (219)121 
Balance as of October 1, 2023$34,195 $(24,209)$9,986 
 Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(17,744)$10,273 
Customer relationships5,838 (3,860)1,978 
Non-compete agreements340 (177)163 
Balance as of December 31, 2022$34,195 $(21,781)$12,414 
As of October 1, 2023, estimated future amortization expense related to intangible assets was as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$709 
20242,623 
20252,300 
20261,995 
20271,273 
2028543 
Thereafter543 
$9,986 
XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.3
Warranty Obligations
9 Months Ended
Oct. 01, 2023
Product Warranties Disclosures [Abstract]  
Warranty Obligations Warranty Obligations
The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims. Obligations may also be recorded subsequent to the time of sale whenever specific events or changes in circumstances impacting product quality become known that would not have been taken into account using historical data. While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company’s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure. An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in “Accrued expenses” on the Consolidated Balance Sheets.
The changes in the warranty obligation were as follows (in thousands):
Balance as of December 31, 2022$4,375 
Provisions for warranties issued during the period1,722 
Fulfillment of warranty obligations(2,292)
Balance as of October 1, 2023$3,805 
XML 29 R19.htm IDEA: XBRL DOCUMENT v3.23.3
Commitment and Contingencies
9 Months Ended
Oct. 01, 2023
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingencies Commitments and Contingencies
As of October 1, 2023, the Company had outstanding purchase orders totaling $70,635,000 to procure inventory from various vendors. Certain of these purchase orders may be canceled by the Company, subject to cancellation penalties. These purchase commitments relate primarily to expected sales in the next twelve months.
A significant portion of the Company's outstanding inventory purchase orders as of October 1, 2023, as well as additional preauthorized commitments to procure strategic components based on the Company's expected customer demand, are placed with the Company's primary contract manufacturer for the Company's assembled products. The Company has the obligation to purchase any non-cancelable and non-returnable components that have been purchased by the contract manufacturer with the Company's preauthorization, when these components have not been consumed within the period defined in the terms of the Company's agreement with this contract manufacturer. While the Company typically expects such purchased components to be used in future production of Cognex finished goods, these components are considered in the Company's reserve estimate for excess and obsolete inventory. Furthermore, the Company accrues for losses on commitments for the future purchase of non-cancelable and non-returnable components from this contract manufacturer at the time that circumstances, such as changes in demand, indicate that the value of the components may not be recoverable, the loss is probable, and management has the ability to reasonably estimate the amount of the loss.
Various claims and legal proceedings generally incidental to the normal course of business are pending or threatened on behalf of or against the Company. While we cannot predict the outcome of these matters, we believe that any liability arising from them will not have a material adverse effect on our financial position, liquidity, or results of operations.
XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments
9 Months Ended
Oct. 01, 2023
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Derivative Instruments Derivative Instruments
The Company’s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates. The Company enters into economic hedges utilizing foreign currency forward contracts with maturities that do not exceed approximately three months to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables. The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged. These economic hedges are not designated as hedging instruments for hedge accounting treatment.
Additionally, during the three-month period ended October 1, 2023, the Company entered into a foreign currency forward contract to exchange U.S. Dollars for ¥40,000,000,000 to hedge the Japanese Yen purchase price of the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements). Upon the settlement of this contract, the Company recorded a foreign currency loss of $8,456,000, which was recorded in "Foreign currency gain (loss)" on the Consolidated Statements of Operations for the three-month period ended October 1, 2023.
The Company had the following outstanding forward contracts (in thousands):
October 1, 2023December 31, 2022
CurrencyNotional
Value
USD
Equivalent
Notional
Value
USD
Equivalent
Derivatives Not Designated as Hedging Instruments:
Japanese Yen40,600,000 $272,499 700,000 $5,281 
Euro37,500 39,741 60,000 64,174 
Singapore Dollar40,500 29,747 — — 
Chinese Renminbi200,000 27,445 55,000 7,619 
Mexican Peso100,000 5,722 185,000 9,480 
Hungarian Forint1,930,000 5,221 1,590,000 4,238 
British Pound3,230 3,956 3,445 4,161 
Canadian Dollar1,650 1,225 1,730 1,278 
Swiss Franc  1,120 1,218 

Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):
 Asset DerivativesLiability Derivatives
 BalanceFair ValueBalanceFair Value
 Sheet
Location
October 1, 2023December 31, 2022Sheet
Location
October 1, 2023December 31, 2022
Derivatives Not Designated as Hedging Instruments:
Economic hedge forward contractsPrepaid expenses and other current assets$196 $27 Accrued expenses$128 $479 
The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):
Asset DerivativesLiability Derivatives
October 1, 2023December 31, 2022October 1, 2023December 31, 2022
Gross amounts of recognized assets$196 $27 Gross amounts of recognized liabilities$128 $479 
Gross amounts offset — Gross amounts offset — 
Net amount of assets presented$196 $27 Net amount of liabilities presented$128 $479 

Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):
 Location in Financial StatementsThree-months Ended
Nine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Derivatives Not Designated as Hedging Instruments:
Gains (losses) recognized in current operationsForeign currency gain (loss)$(7,527)$7,161 $(8,139)$15,091 
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition
9 Months Ended
Oct. 01, 2023
Revenue from Contract with Customer [Abstract]  
Revenue Recognition Revenue Recognition
The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Americas$80,156 $65,847 $243,067 $284,057 
Europe51,827 48,930 168,529 173,561 
Greater China34,485 66,460 139,837 193,481 
Other Asia30,773 28,385 89,444 115,558 
$197,241 $209,622 $640,877 $766,657 

The following table summarizes disaggregated revenue information by revenue type (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Standard products and services$170,104 $158,244 $555,831 $637,598 
Application-specific customer solutions27,137 51,378 85,046 129,059 
$197,241 $209,622 $640,877 $766,657 
Costs to Fulfill a Contract
Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to $17,827,000 and $14,578,000 as of October 1, 2023 and December 31, 2022, respectively.
Accounts Receivable, Contract Assets, and Contract Liabilities
Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value. The Company maintains an allowance against its accounts receivable for credit losses. Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts. Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.
The following table summarizes the allowance for credit losses activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$730 
Increases to the allowance for credit losses350 
Write-offs, net of recoveries(500)
Foreign exchange rate changes— 
Balance as of October 1, 2023$580 
The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$40,787 
Deferral of revenue billed in the current period, net of recognition28,249 
Recognition of revenue deferred in prior period(18,809)
Returned customer deposit(9,205)
Foreign exchange rate changes(776)
Balance as of October 1, 2023$40,246 
As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense
9 Months Ended
Oct. 01, 2023
Share-Based Payment Arrangement [Abstract]  
Stock-Based Compensation Expense Stock-Based Compensation Expense
Stock Plans
The Company’s stock-based awards that result in compensation expense consist of stock options, restricted stock units ("RSUs"), and performance restricted stock units ("PRSUs"). In May 2023, the shareholders of the Company approved the Cognex Corporation 2023 Stock Option and Incentive Plan (the “2023 Plan”). The 2023 Plan permits awards of stock options (both incentive and non-qualified options), stock appreciation rights, RSUs, and PRSUs. Up to 8,100,000 shares of common stock (subject to adjustment in the event of stock splits and other similar events) may be issued pursuant to awards granted under the 2023 Plan. In connection with the approval of the 2023 Plan, no further awards will be made under the Cognex Corporation 2001 General Stock Option Plan, as amended and restated (the “2001 Plan”), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the “2007 Plan”). With the approval of the 2023 Plan, the 10,610,800 shares of common stock subject to awards granted under the 2001 Plan and the 2007 Plan that were outstanding as of May 3, 2023 may become eligible for issuance under the 2023 Plan if such awards are forfeited, cancelled or otherwise terminated (other than by exercise) (the “Carryover Shares”). As of October 1, 2023, forfeits, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in 214,024 Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to 8,314,024.
As of October 1, 2023, the Company had 8,035,000 shares available for grant under its stock plans. Stock options are granted with an exercise price equal to the market value of the Company’s common stock at the grant date and generally vest over four or five years based upon continuous service and expire ten years from the grant date. RSUs generally vest upon three or four years of continuous employment or incrementally over such three or four-year periods. PRSUs generally vest upon three years of continuous employment and achievement of performance criteria established by the Compensation Committee of our Board of Directors on or prior to the grant date. Participants are not entitled to dividends on stock options, RSUs, or PRSUs.
Stock Options
The following table summarizes the Company’s stock option activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-
Average
Exercise
Price
Weighted-
Average
Remaining
Contractual
Term (in years)
Aggregate
Intrinsic
Value
(in thousands)
Outstanding as of December 31, 2022
8,467 $51.56 
Granted1,395 47.49 
Exercised(325)33.87 
Forfeited or expired(562)57.71 
Outstanding as of October 1, 2023
8,975 $51.19 6.13$17,396 
Exercisable as of October 1, 2023
5,182 $47.67 4.67$17,378 
Options vested or expected to vest as of October 1, 2023 (1)8,493 $51.01 5.98$17,396 
 (1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future. Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.
The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Risk-free rate4.1 %2.7 %4.0 %2.1 %
Expected dividend yield0.57 %0.54 %0.59 %0.44 %
Expected volatility39 %37 %39 %37 %
Expected term (in years)5.96.44.95.5
Risk-free rate
The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.
Expected dividend yield
Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company’s Board of Directors and dividing that result by the closing stock price on the grant date. 
Expected volatility
The expected volatility was based upon a combination of historical volatility of the Company’s common stock over the contractual term of the option and implied volatility for traded options of the Company’s stock.
Expected term
The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.
The weighted-average grant-date fair values of stock options granted during the three-month and nine-month periods ended October 1, 2023 were $20.55 and $18.11, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $18.81 and $21.40, respectively.
The total intrinsic values of stock options exercised for the three-month and nine-month periods ended October 1, 2023 were $557,000 and $6,119,000, respectively, and for the three-month and nine-month periods ended
October 2, 2022 were $516,000 and $3,615,000, respectively. The total fair values of stock options vested for the three-month and nine-month periods ended October 1, 2023 were $962,000 and $33,035,000, respectively, and for the three-month and nine-month periods ended October 2, 2022 were $1,159,000 and $27,882,000, respectively.
Restricted Stock Units (RSUs)
The following table summarizes the Company's RSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
1,269 $61.74 
Granted748 46.78 
Vested(500)59.43 
Forfeited or expired(86)60.65 
Nonvested as of October 1, 2023
1,431 $54.79 
The fair value of RSUs is determined based on the observable market price of the Company's stock on the grant date less the present value of expected future dividends. The weighted-average grant-date fair values of RSUs granted during the three-month and nine-month periods ended October 1, 2023 were $46.17 and $46.78, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $47.12 and $58.44, respectively. There were 18,000 and 500,000 RSUs that vested during the three-month and nine-month periods ended October 1, 2023, respectively, and 67,000 and 141,000 that vested during the three-month and nine-month periods ended October 2, 2022, respectively.
Performance Restricted Stock Units (PRSUs)
The following table summarizes the Company's PRSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
33 $62.49 
Granted46 44.86 
Vested— — 
Forfeited or expired— — 
Nonvested as of October 1, 2023
79 $52.23 
The fair value of PRSUs is calculated using the Monte Carlo simulation model to estimate the probability of satisfying the service and market conditions stipulated in the award grant. There were no PRSUs granted during the three-month periods ended October 1, 2023 and October 2, 2022. There were 46,000 and 33,000 PRSUs granted during the nine-month periods ended October 1, 2023 and October 2, 2022, respectively. No PRSUs vested during the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.
Stock-Based Compensation Expense
The Company stratifies its employee population into three groups: one consisting of the CEO, one consisting of senior management, and another consisting of all other employees. The Company currently applies an estimated annual forfeiture rate of 0% to all stock-based awards for the CEO, 8% to all stock-based awards for senior management, and a rate of 13% for all other employees. Each year during the first quarter, the Company revises its forfeiture rate based on updated estimates of employee turnover. This resulted in a decrease to compensation expense of $234,000 in 2023 and an increase to compensation expense of $1,536,000 in 2022.
As of October 1, 2023, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $68,509,000, which is expected to be recognized over a weighted-average period of 2.0 years.
The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 1, 2023 were $12,365,000 and $1,971,000, respectively, and for the nine-month period ended October 1, 2023 were $41,518,000 and $6,053,000, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 2, 2022 were $13,366,000 and $2,133,000, respectively, and for the nine-month period ended October 2, 2022 were $41,419,000 and $6,496,000, respectively. No compensation expense was capitalized as of October 1, 2023 or December 31, 2022.
The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Cost of revenue$435 $468 $1,497 $1,513 
Research, development, and engineering3,459 4,209 12,657 12,508 
Selling, general, and administrative8,471 8,689 27,364 27,398 
$12,365 $13,366 $41,518 $41,419 
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.3
Stock Repurchase Program
9 Months Ended
Oct. 01, 2023
Equity [Abstract]  
Stock Repurchase Program Stock Repurchase ProgramOn March 12, 2020, the Company's Board of Directors authorized the repurchase of $200,000,000 of the Company's common stock. Under this March 2020 program, in addition to repurchases made in prior years, the Company repurchased 1,677,000 shares, and an additional 5,000 shares that were repurchased in 2021 and settled in 2022, at a cost of $117,000,000 during the nine-month period ended October 2, 2022, which completed purchases under this program. On March 3, 2022, the Company's Board of Directors authorized the repurchase of an additional $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 1,125,000 shares at a total cost of $61,387,000 during the nine-month period ended October 2, 2022. Under this same March 2022 program, in addition to repurchases made in the prior year, the Company repurchased 1,157,000 shares at a total cost of $59,640,000 during the nine-month period ended October 1, 2023, leaving a remaining balance of $353,046,000 as of October 1, 2023. The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock awards, stock price, share availability, and cash requirements. The Company is authorized to make repurchases of its common stock through open market purchases, pursuant to Rule 10b5-1 trading plans, or in privately negotiated transactions.
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.3
Income Taxes
9 Months Ended
Oct. 01, 2023
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
The Company's effective tax rate was 30% and 16% for the three-month and nine-month periods ended October 1, 2023, respectively, and 14% and 16% for the three-month and nine-month periods ended October 2, 2022, respectively.
The Company has defined its major tax jurisdictions as the United States, Ireland, China, and Korea, and within the United States, Massachusetts. The statutory tax rate is 12.5% in Ireland, 25% in China, and 22% in Korea compared to the U.S. federal statutory corporate tax rate of 21%. These foreign tax rate differences resulted in a net decrease to the effective tax rate for both the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.
The Company recorded a net discrete tax expense totaling $4,035,000 and $840,000 for the three-month and nine-month periods ended October 1, 2023, respectively and a net discrete tax benefit totaling $2,000 and a net discrete tax expense totaling $3,984,000 for the same periods in 2022.
Discrete tax items for the nine-month period ended October 1, 2023 included (1) a net decrease in tax expense of $3,043,000 due primarily to the release of tax reserves on state tax credits and foreign audit settlements; (2) a decrease in tax expense of $2,198,000 for adjustments to certain deferred tax assets; (3) an increase in tax expense of $2,178,000 for an adjustment related to deferred state taxes due to a reduction in the Company's blended state rate; (4) a net increase in tax expense of $2,134,000 for return-to-provision adjustments; and (5) an increase in tax expense of $1,769,000 related to stock-based compensation.
Discrete tax items for the nine-month period ended October 2, 2022 included (1) a net increase in tax expense of $3,822,000 primarily for return-to-provision adjustments; (2) a net decrease in tax expense of $2,461,000 arising primarily from audit settlements and releases of reserves; (3) an increase in tax expense of $2,316,000 to establish a reserve against certain deferred tax assets; and (4) an increase in tax expense of $307,000 related to stock-based compensation;
The Company’s reserve for income taxes, including gross interest and penalties, was $19,450,000 as of October 1, 2023, which was classified as a non-current liability. If the Company’s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.
Within the United States, the tax years 2019 through 2022 remain open to examination by the IRS, and 2018 through 2022 remain open to examination by various state tax authorities. The tax years 2017 through 2022 remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates.
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.3
Weighted-Average Shares
9 Months Ended
Oct. 01, 2023
Earnings Per Share [Abstract]  
Weighted-Average Shares Weighted-Average Shares
Weighted-average shares were calculated as follows (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Basic weighted-average common shares outstanding172,169 173,256 172,408 173,640 
Effect of dilutive equity awards1,185 1,071 1,251 1,593 
Weighted-average common and common-equivalent shares outstanding173,354 174,327 173,659 175,233 
Stock options to purchase 6,893,000 and 6,775,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 6,167,000 and 3,297,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling 3,000 and 1,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 607,000 and 26,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the three-month and nine-month periods ended October 1, 2023, as PRSUs were not anti-dilutive on a weighted-average basis. PRSUs totaling 33,000 shares of common stock, on a weighted average basis, were outstanding during the three-month period ended October 2,
2022, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the nine-month period ended October 2, 2022 as PRSUs were not anti-dilutive on a weighted-average basis.
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.3
Loss (Recovery) from Fire
9 Months Ended
Oct. 01, 2023
Unusual or Infrequent Items, or Both [Abstract]  
Loss (Recovery) from Fire Loss (Recovery) from Fire
On June 7, 2022, the Company’s primary contract manufacturer experienced a fire at its plant in Indonesia. The fire destroyed a significant amount of Cognex-owned consigned inventories, as well as component inventories owned by the contract manufacturer that were designated for Cognex products. There was no significant damage to the Company's production equipment. Since the date of the fire, the Company has worked with the contract manufacturer to resume production, maintain standards of product quality, and replenish inventories destroyed by the fire. The Company has also been working to ramp up an additional contract manufacturer to further mitigate risk, diversify the supply chain, and expand production capacity.
During the nine-month period ended October 2, 2022, the Company recorded a net loss related to the fire of $20,294,000, consisting primarily of losses from inventories and other assets of $47,794,000, including $2,891,000 during the three-month period ended October 2, 2022, partially offset by an estimated insurance recovery of $27,500,000. These losses are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations. The Company received insurance proceeds of $27,560,000 from the Company's insurance carrier in the fourth quarter of 2022, and gross losses recorded during 2022 related to the fire were further reduced by the proceeds received in excess of the original estimated insurance recovery.
During the nine-month period ended October 1, 2023, the Company recorded recoveries related to the fire of $5,250,000, consisting of $2,500,000 during the three-month period ended July 2, 2023 for proceeds received from the Company's insurance carrier in relation to a business interruption claim and $2,750,000 during the three-month period ended October 1, 2023 for proceeds received as part of a financial settlement for lost inventory and other losses incurred as a result of the fire. The Company expects to receive an additional $2,750,000 by the end of 2023. These recovery amounts are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations.
As of October 1, 2023 and through the date of financial statement issuance, management does not anticipate additional recoveries other than disclosed.
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.3
Restructuring Charges
9 Months Ended
Oct. 01, 2023
Restructuring and Related Activities [Abstract]  
Restructuring Charges Restructuring Charges
On December 7, 2022, the Company acquired all of the outstanding shares of SAC Sirius Advanced Cybernetics GmbH ("SAC"), a leader in computational lighting technology based in Germany. Following its acquisition of SAC, the Company performed restructuring activities to align the cost and operating structure of the acquired business with the Company's business strategy. As of December 31, 2022, the majority of these restructuring actions were completed. No additional charges were recorded during the three-month and nine-month periods ended October 1, 2023, or are expected to be incurred in future periods in relation to this restructuring plan.
The following table summarizes the activity in the Company’s restructuring reserve related to these restructuring activities, which is included in “Accrued expenses” on the Consolidated Balance Sheets (in thousands):
One-time Termination BenefitsContract Termination CostsTotal
Balance as of December 31, 2022$964 $75 $1,039 
Cash payments(973)(56)(1,029)
Foreign exchange rate changes10 
Balance as of October 1, 2023
$ $20 $20 
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.3
Subsequent Events
9 Months Ended
Oct. 01, 2023
Subsequent Events [Abstract]  
Subsequent Events Subsequent EventsOn October 18, 2023, the Company acquired all of the outstanding shares of Moritex Corporation, a leading global provider of optics components with a strong presence in Japan, for an enterprise value of ¥40 billion, or approximately $270 million based on closing-date foreign exchange rates, in an all-cash transaction. Given the timing of this acquisition, the Company is in the process of completing the purchase price allocation for the consideration paid. Transaction costs incurred to date were not material and were expensed as incurred. The financial results of Moritex Corporation prior to the acquisition date are not material to the consolidated financial results of the Company.On October 31, 2023, the Company’s Board of Directors declared a cash dividend of $0.075 per share. The dividend is payable on December 1, 2023 to all shareholders of record as of the close of business on November 17, 2023.
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.3
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Pay vs Performance Disclosure        
Net income $ 18,916 $ 33,980 $ 102,005 $ 160,214
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.3
Insider Trading Arrangements
3 Months Ended
Oct. 01, 2023
Trading Arrangements, by Individual  
Non-Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Terminated false
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.3
Summary of Significant Accounting Policies (Policies)
9 Months Ended
Oct. 01, 2023
Accounting Policies [Abstract]  
New Pronouncements New Pronouncements
Accounting Standards Update (ASU) 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting", (ASU) 2021-01, "Reference Rate Reform (Topic 848): Scope", and Accounting Standards Update (ASU) 2022-06, "Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848"
The amendments in these ASUs apply to all entities that have contracts, hedging relationships, and other transactions that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. Together, the ASUs provide optional expedients and exceptions for applying generally accepted accounting principles (GAAP) to contracts, hedging relationships, and other transactions affected by reference rate reform if certain criteria are met. The expedients and exceptions provided by the amendments do not apply to contract modifications made and hedging relationships entered into or evaluated after December 31, 2024, except for hedging relationships existing as of December 31, 2024 that an entity has elected certain optional expedients for and that are retained through the end of the hedging relationship. The amendments in these ASUs are effective for all entities as of March 12, 2020 through December 31, 2024. Management adopted Topic 848 on January 1, 2023, and now uses the Secured Overnight Financing Rate (SOFR). The adoption did not have a material impact on the Company's financial statements and disclosures.
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.3
Fair Value Measurements (Tables)
9 Months Ended
Oct. 01, 2023
Fair Value Disclosures [Abstract]  
Assets and Liabilities Measured at Fair Value on a Recurring Basis
The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of October 1, 2023 (in thousands):
Quoted Prices in
Active Markets
for Identical
Assets (Level 1)
Significant Other
Observable
Inputs (Level 2)
Unobservable Inputs (Level 3)
Assets:
Money market instruments$241,716 $— $— 
Corporate bonds— 349,405 — 
Treasury bills— 61,742 — 
Asset-backed securities— 37,051 — 
Sovereign bonds— 1,940 — 
Economic hedge forward contracts— 196 — 
Liabilities:
Economic hedge forward contracts— 128 — 
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments (Tables)
9 Months Ended
Oct. 01, 2023
Cash and Cash Equivalents [Abstract]  
Components of Cash, Cash Equivalents, and Investments
Cash, cash equivalents, and investments consisted of the following (in thousands):
October 1, 2023December 31, 2022
Cash$153,785 $180,959 
Money market instruments241,716 415 
Cash and cash equivalents395,501 181,374 
Corporate bonds110,627 164,055 
Asset-backed securities3,084 26,890 
Treasury bills2,457 11,332 
Sovereign bonds979 — 
Agency bonds 15,858 
Municipal bonds 624 
Current investments117,147 218,759 
Corporate bonds238,778 374,440 
Treasury bills59,285 44,214 
Asset-backed securities33,967 33,539 
Sovereign bonds961 1,924 
Non-current investments332,991 454,117 
$845,639 $854,250 
Summary of Available-for-Sale Investments
The following table summarizes the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
Amortized
Cost
Gross
Unrealized
Gains
Gross
Unrealized
Losses
Fair Value
Current:
Corporate bonds$114,188 $— $(3,561)$110,627 
Asset-backed securities3,128 — (44)3,084 
Treasury bills2,498 — (41)2,457 
Sovereign bonds1,017 — (38)979 
Non-current:
Corporate bonds251,635 (12,866)238,778 
Treasury bills60,871 — (1,586)59,285 
Asset-backed securities35,512 — (1,545)33,967 
Sovereign bonds1,042 — (81)961 
$469,891 $9 $(19,762)$450,138 
Gross Unrealized Losses and Fair Values for Available-for-Sale Investments The following table summarizes the Company’s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of October 1, 2023 (in thousands):
 Unrealized Loss Position For: 
 Less than 12 Months12 Months or GreaterTotal
 Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Fair ValueUnrealized
Losses
Corporate bonds$103,100 $(2,900)$244,535 $(13,527)$347,635 $(16,427)
Treasury bills56,878 (1,492)4,864 (135)61,742 (1,627)
Asset-backed securities32,425 (1,465)4,626 (124)37,051 (1,589)
Sovereign bonds— — 1,940 (119)1,940 (119)
$192,403 $(5,857)$255,965 $(13,905)$448,368 $(19,762)
Realized Gain (Loss) on Investments
The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Gross realized gains$109 $— $109 $133 
Gross realized losses(733)(79)(733)(236)
Net realized gains (losses)$(624)$(79)$(624)$(103)
Effective Maturity Dates of Available-for-Sale Investments
The following table presents the effective maturity dates of the Company’s available-for-sale investments as of October 1, 2023 (in thousands):
<1 year1-2 Years2-3 Years3-4 Years4-5 Years5-8 YearsTotal
Corporate bonds$110,627 $95,497 $65,409 $34,878 $42,539 $455 $349,405 
Treasury bills2,457 5,306 15,016 21,842 17,121 — 61,742 
Asset-backed securities3,084 12,722 10,584 3,978 — 6,683 37,051 
Sovereign bonds979 — 961 — — — 1,940 
$117,147 $113,525 $91,970 $60,698 $59,660 $7,138 $450,138 
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.3
Inventories (Tables)
9 Months Ended
Oct. 01, 2023
Inventory Disclosure [Abstract]  
Schedule of Inventories
Inventories consisted of the following (in thousands):
October 1, 2023December 31, 2022
Raw materials$80,091 $71,720 
Work-in-process1,712 906 
Finished goods52,063 49,854 
$133,866 $122,480 
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.3
Leases (Tables)
9 Months Ended
Oct. 01, 2023
Leases [Abstract]  
Lessee, Operating Lease, Liability, Maturity
Future operating lease cash payments are as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$2,510 
202411,580 
20259,677 
20267,799 
20277,231 
20286,992 
Thereafter46,421 
$92,210 
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.3
Goodwill (Tables)
9 Months Ended
Oct. 01, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Goodwill
The changes in the carrying value of goodwill were as follows (in thousands):
Balance as of December 31, 2022$242,630 
  Foreign exchange rate changes(1,588)
Balance as of October 1, 2023$241,042 
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.3
Intangible Assets (Tables)
9 Months Ended
Oct. 01, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Intangible Assets
Amortized intangible assets consisted of the following (in thousands):
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(19,590)$8,427 
Customer relationships5,838 (4,400)1,438 
Non-compete agreements340 (219)121 
Balance as of October 1, 2023$34,195 $(24,209)$9,986 
 Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Value
Completed technologies$28,017 $(17,744)$10,273 
Customer relationships5,838 (3,860)1,978 
Non-compete agreements340 (177)163 
Balance as of December 31, 2022$34,195 $(21,781)$12,414 
Schedule of Intangible Assets, Future Amortization Expense
As of October 1, 2023, estimated future amortization expense related to intangible assets was as follows (in thousands):
Year Ended December 31,Amount
Remainder of fiscal 2023$709 
20242,623 
20252,300 
20261,995 
20271,273 
2028543 
Thereafter543 
$9,986 
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.3
Warranty Obligations (Tables)
9 Months Ended
Oct. 01, 2023
Product Warranties Disclosures [Abstract]  
Changes in Warranty Obligations
The changes in the warranty obligation were as follows (in thousands):
Balance as of December 31, 2022$4,375 
Provisions for warranties issued during the period1,722 
Fulfillment of warranty obligations(2,292)
Balance as of October 1, 2023$3,805 
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments (Tables)
9 Months Ended
Oct. 01, 2023
Derivative Instruments and Hedging Activities Disclosure [Abstract]  
Outstanding Forward Contracts Table
The Company had the following outstanding forward contracts (in thousands):
October 1, 2023December 31, 2022
CurrencyNotional
Value
USD
Equivalent
Notional
Value
USD
Equivalent
Derivatives Not Designated as Hedging Instruments:
Japanese Yen40,600,000 $272,499 700,000 $5,281 
Euro37,500 39,741 60,000 64,174 
Singapore Dollar40,500 29,747 — — 
Chinese Renminbi200,000 27,445 55,000 7,619 
Mexican Peso100,000 5,722 185,000 9,480 
Hungarian Forint1,930,000 5,221 1,590,000 4,238 
British Pound3,230 3,956 3,445 4,161 
Canadian Dollar1,650 1,225 1,730 1,278 
Swiss Franc  1,120 1,218 
Schedule of Derivative Instruments in Statement of Financial Position, Fair Value
Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):
 Asset DerivativesLiability Derivatives
 BalanceFair ValueBalanceFair Value
 Sheet
Location
October 1, 2023December 31, 2022Sheet
Location
October 1, 2023December 31, 2022
Derivatives Not Designated as Hedging Instruments:
Economic hedge forward contractsPrepaid expenses and other current assets$196 $27 Accrued expenses$128 $479 
Offsetting Assets
The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):
Asset DerivativesLiability Derivatives
October 1, 2023December 31, 2022October 1, 2023December 31, 2022
Gross amounts of recognized assets$196 $27 Gross amounts of recognized liabilities$128 $479 
Gross amounts offset — Gross amounts offset — 
Net amount of assets presented$196 $27 Net amount of liabilities presented$128 $479 
Derivative Instruments, Gain (Loss)
Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):
 Location in Financial StatementsThree-months Ended
Nine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Derivatives Not Designated as Hedging Instruments:
Gains (losses) recognized in current operationsForeign currency gain (loss)$(7,527)$7,161 $(8,139)$15,091 
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition (Tables)
9 Months Ended
Oct. 01, 2023
Revenue from Contract with Customer [Abstract]  
Revenue from External Customers by Geographic Areas
The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Americas$80,156 $65,847 $243,067 $284,057 
Europe51,827 48,930 168,529 173,561 
Greater China34,485 66,460 139,837 193,481 
Other Asia30,773 28,385 89,444 115,558 
$197,241 $209,622 $640,877 $766,657 
Revenue from External Customers by Products and Services
The following table summarizes disaggregated revenue information by revenue type (in thousands):
Three-months EndedNine-months Ended
October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Standard products and services$170,104 $158,244 $555,831 $637,598 
Application-specific customer solutions27,137 51,378 85,046 129,059 
$197,241 $209,622 $640,877 $766,657 
Schedule of Allowance for Credit Loss Activity
The following table summarizes the allowance for credit losses activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$730 
Increases to the allowance for credit losses350 
Write-offs, net of recoveries(500)
Foreign exchange rate changes— 
Balance as of October 1, 2023$580 
Deferred Revenue, by Arrangement, Disclosure
The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended October 1, 2023 (in thousands):
Balance as of December 31, 2022$40,787 
Deferral of revenue billed in the current period, net of recognition28,249 
Recognition of revenue deferred in prior period(18,809)
Returned customer deposit(9,205)
Foreign exchange rate changes(776)
Balance as of October 1, 2023$40,246 
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense (Tables)
9 Months Ended
Oct. 01, 2023
Share-Based Payment Arrangement [Abstract]  
Summary of Stock Option Activity
The following table summarizes the Company’s stock option activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-
Average
Exercise
Price
Weighted-
Average
Remaining
Contractual
Term (in years)
Aggregate
Intrinsic
Value
(in thousands)
Outstanding as of December 31, 2022
8,467 $51.56 
Granted1,395 47.49 
Exercised(325)33.87 
Forfeited or expired(562)57.71 
Outstanding as of October 1, 2023
8,975 $51.19 6.13$17,396 
Exercisable as of October 1, 2023
5,182 $47.67 4.67$17,378 
Options vested or expected to vest as of October 1, 2023 (1)8,493 $51.01 5.98$17,396 
 (1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future. Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.
Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted
The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Risk-free rate4.1 %2.7 %4.0 %2.1 %
Expected dividend yield0.57 %0.54 %0.59 %0.44 %
Expected volatility39 %37 %39 %37 %
Expected term (in years)5.96.44.95.5
Schedule of Nonvested Restricted Stock Units Activity
The following table summarizes the Company's RSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
1,269 $61.74 
Granted748 46.78 
Vested(500)59.43 
Forfeited or expired(86)60.65 
Nonvested as of October 1, 2023
1,431 $54.79 
Schedule of Nonvested Performance-based Units Activity
The following table summarizes the Company's PRSUs activity for the nine-month period ended October 1, 2023:
Shares
(in thousands)
Weighted-Average
Grant Date Fair Value
Nonvested as of December 31, 2022
33 $62.49 
Granted46 44.86 
Vested— — 
Forfeited or expired— — 
Nonvested as of October 1, 2023
79 $52.23 
Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs
The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Cost of revenue$435 $468 $1,497 $1,513 
Research, development, and engineering3,459 4,209 12,657 12,508 
Selling, general, and administrative8,471 8,689 27,364 27,398 
$12,365 $13,366 $41,518 $41,419 
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.3
Weighted-Average Shares (Tables)
9 Months Ended
Oct. 01, 2023
Earnings Per Share [Abstract]  
Calculation of Weighted-Average Shares
Weighted-average shares were calculated as follows (in thousands):
 Three-months EndedNine-months Ended
 October 1, 2023October 2, 2022October 1, 2023October 2, 2022
Basic weighted-average common shares outstanding172,169 173,256 172,408 173,640 
Effect of dilutive equity awards1,185 1,071 1,251 1,593 
Weighted-average common and common-equivalent shares outstanding173,354 174,327 173,659 175,233 
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.3
Restructuring Charges (Tables)
9 Months Ended
Oct. 01, 2023
Restructuring and Related Activities [Abstract]  
Schedule of Activity in Restructuring Reserve
The following table summarizes the activity in the Company’s restructuring reserve related to these restructuring activities, which is included in “Accrued expenses” on the Consolidated Balance Sheets (in thousands):
One-time Termination BenefitsContract Termination CostsTotal
Balance as of December 31, 2022$964 $75 $1,039 
Cash payments(973)(56)(1,029)
Foreign exchange rate changes10 
Balance as of October 1, 2023
$ $20 $20 
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.3
Fair Value Measurements (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Assets:    
Money market instruments $ 241,716 $ 415
Financial assets at fair value 450,138  
Corporate bonds    
Assets:    
Financial assets at fair value 349,405  
Treasury bills    
Assets:    
Financial assets at fair value 61,742  
Asset-backed securities    
Assets:    
Financial assets at fair value 37,051  
Sovereign bonds    
Assets:    
Financial assets at fair value 1,940  
Quoted Prices in Active Markets for Identical Assets (Level 1) | Recurring    
Assets:    
Money market instruments 241,716  
Economic hedge forward contracts 0  
Liabilities:    
Economic hedge forward contracts 0  
Quoted Prices in Active Markets for Identical Assets (Level 1) | Recurring | Corporate bonds    
Assets:    
Financial assets at fair value 0  
Quoted Prices in Active Markets for Identical Assets (Level 1) | Recurring | Treasury bills    
Assets:    
Financial assets at fair value 0  
Quoted Prices in Active Markets for Identical Assets (Level 1) | Recurring | Asset-backed securities    
Assets:    
Financial assets at fair value 0  
Quoted Prices in Active Markets for Identical Assets (Level 1) | Recurring | Sovereign bonds    
Assets:    
Financial assets at fair value 0  
Significant Other Observable Inputs (Level 2) | Recurring    
Assets:    
Money market instruments 0  
Economic hedge forward contracts 196  
Liabilities:    
Economic hedge forward contracts 128  
Significant Other Observable Inputs (Level 2) | Recurring | Corporate bonds    
Assets:    
Financial assets at fair value 349,405  
Significant Other Observable Inputs (Level 2) | Recurring | Treasury bills    
Assets:    
Financial assets at fair value 61,742  
Significant Other Observable Inputs (Level 2) | Recurring | Asset-backed securities    
Assets:    
Financial assets at fair value 37,051  
Significant Other Observable Inputs (Level 2) | Recurring | Sovereign bonds    
Assets:    
Financial assets at fair value 1,940  
Unobservable Inputs (Level 3) | Recurring    
Assets:    
Money market instruments 0  
Economic hedge forward contracts 0  
Liabilities:    
Economic hedge forward contracts 0  
Unobservable Inputs (Level 3) | Recurring | Corporate bonds    
Assets:    
Financial assets at fair value 0  
Unobservable Inputs (Level 3) | Recurring | Treasury bills    
Assets:    
Financial assets at fair value 0  
Unobservable Inputs (Level 3) | Recurring | Asset-backed securities    
Assets:    
Financial assets at fair value 0  
Unobservable Inputs (Level 3) | Recurring | Sovereign bonds    
Assets:    
Financial assets at fair value $ 0  
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Debt Securities, Available-for-sale    
Cash $ 153,785 $ 180,959
Money market instruments 241,716 415
Cash and cash equivalents 395,501 181,374
Current investments 117,147 218,759
Non-current investments 332,991 454,117
Total 845,639 854,250
Corporate bonds    
Debt Securities, Available-for-sale    
Current investments 110,627 164,055
Long-term investments 238,778 374,440
Asset-backed securities    
Debt Securities, Available-for-sale    
Current investments 3,084 26,890
Long-term investments 33,967 33,539
Treasury bills    
Debt Securities, Available-for-sale    
Current investments 2,457 11,332
Long-term investments 59,285 44,214
Municipal bonds    
Debt Securities, Available-for-sale    
Current investments 0 624
Agency bonds    
Debt Securities, Available-for-sale    
Current investments 0 15,858
Sovereign bonds    
Debt Securities, Available-for-sale    
Current investments 979 0
Long-term investments $ 961 $ 1,924
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Dec. 31, 2022
Cash and Cash Equivalents [Line Items]          
Debt securities, available-for-sale, allowance for credit loss $ 0   $ 0   $ 0
Credit loss on investments 0 $ 0 0 $ 0  
Gross realized gains 109 0 109 133  
Gross realized losses (733) $ (79) (733) $ (236)  
Other current assets          
Cash and Cash Equivalents [Line Items]          
Accrued interest receivable $ 4,094   $ 4,094   $ 3,620
XML 57 R47.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)
$ in Thousands
Oct. 01, 2023
USD ($)
Debt Securities, Available-for-sale  
Amortized Cost $ 469,891
Gross Unrealized Gains 9
Gross Unrealized Losses (19,762)
Fair Value 450,138
Corporate bonds  
Debt Securities, Available-for-sale  
Fair Value 349,405
Corporate bonds | Current assets  
Debt Securities, Available-for-sale  
Amortized Cost 114,188
Gross Unrealized Gains 0
Gross Unrealized Losses (3,561)
Fair Value 110,627
Corporate bonds | Non-current assets  
Debt Securities, Available-for-sale  
Amortized Cost 251,635
Gross Unrealized Gains 9
Gross Unrealized Losses (12,866)
Fair Value 238,778
Asset-backed securities  
Debt Securities, Available-for-sale  
Fair Value 37,051
Asset-backed securities | Current assets  
Debt Securities, Available-for-sale  
Amortized Cost 3,128
Gross Unrealized Gains 0
Gross Unrealized Losses (44)
Fair Value 3,084
Asset-backed securities | Non-current assets  
Debt Securities, Available-for-sale  
Amortized Cost 35,512
Gross Unrealized Gains 0
Gross Unrealized Losses (1,545)
Fair Value 33,967
Treasury bills  
Debt Securities, Available-for-sale  
Fair Value 61,742
Treasury bills | Current assets  
Debt Securities, Available-for-sale  
Amortized Cost 2,498
Gross Unrealized Gains 0
Gross Unrealized Losses (41)
Fair Value 2,457
Treasury bills | Non-current assets  
Debt Securities, Available-for-sale  
Amortized Cost 60,871
Gross Unrealized Gains 0
Gross Unrealized Losses (1,586)
Fair Value 59,285
Sovereign bonds  
Debt Securities, Available-for-sale  
Fair Value 1,940
Sovereign bonds | Current assets  
Debt Securities, Available-for-sale  
Amortized Cost 1,017
Gross Unrealized Gains 0
Gross Unrealized Losses (38)
Fair Value 979
Sovereign bonds | Non-current assets  
Debt Securities, Available-for-sale  
Amortized Cost 1,042
Gross Unrealized Gains 0
Gross Unrealized Losses (81)
Fair Value $ 961
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)
$ in Thousands
Oct. 01, 2023
USD ($)
Debt Securities, Available-for-sale  
Fair value, less than 12 months $ 192,403
Unrealized losses, less than 12 months (5,857)
Fair value, 12 months or greater 255,965
Unrealized losses, 12 months or greater (13,905)
Total fair value 448,368
Total unrealized Losses (19,762)
Corporate bonds  
Debt Securities, Available-for-sale  
Fair value, less than 12 months 103,100
Unrealized losses, less than 12 months (2,900)
Fair value, 12 months or greater 244,535
Unrealized losses, 12 months or greater (13,527)
Total fair value 347,635
Total unrealized Losses (16,427)
Treasury bills  
Debt Securities, Available-for-sale  
Fair value, less than 12 months 56,878
Unrealized losses, less than 12 months (1,492)
Fair value, 12 months or greater 4,864
Unrealized losses, 12 months or greater (135)
Total fair value 61,742
Total unrealized Losses (1,627)
Asset-backed securities  
Debt Securities, Available-for-sale  
Fair value, less than 12 months 32,425
Unrealized losses, less than 12 months (1,465)
Fair value, 12 months or greater 4,626
Unrealized losses, 12 months or greater (124)
Total fair value 37,051
Total unrealized Losses (1,589)
Sovereign bonds  
Debt Securities, Available-for-sale  
Fair value, less than 12 months 0
Unrealized losses, less than 12 months 0
Fair value, 12 months or greater 1,940
Unrealized losses, 12 months or greater (119)
Total fair value 1,940
Total unrealized Losses $ (119)
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Cash and Cash Equivalents [Abstract]        
Gross realized gains $ 109 $ 0 $ 109 $ 133
Gross realized losses (733) (79) (733) (236)
Net realized gains (losses) $ (624) $ (79) $ (624) $ (103)
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.3
Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)
$ in Thousands
Oct. 01, 2023
USD ($)
Debt Securities, Available-for-sale  
less than 1 year $ 117,147
1-2 Years 113,525
2-3 Years 91,970
3-4 Years 60,698
4-5 Years 59,660
5-8 Years 7,138
Total 450,138
Corporate bonds  
Debt Securities, Available-for-sale  
less than 1 year 110,627
1-2 Years 95,497
2-3 Years 65,409
3-4 Years 34,878
4-5 Years 42,539
5-8 Years 455
Total 349,405
Treasury bills  
Debt Securities, Available-for-sale  
less than 1 year 2,457
1-2 Years 5,306
2-3 Years 15,016
3-4 Years 21,842
4-5 Years 17,121
5-8 Years 0
Total 61,742
Asset-backed securities  
Debt Securities, Available-for-sale  
less than 1 year 3,084
1-2 Years 12,722
2-3 Years 10,584
3-4 Years 3,978
4-5 Years 0
5-8 Years 6,683
Total 37,051
Sovereign bonds  
Debt Securities, Available-for-sale  
less than 1 year 979
1-2 Years 0
2-3 Years 961
3-4 Years 0
4-5 Years 0
5-8 Years 0
Total $ 1,940
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.23.3
Inventories (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Inventory Disclosure [Abstract]    
Raw materials $ 80,091 $ 71,720
Work-in-process 1,712 906
Finished goods 52,063 49,854
Inventories $ 133,866 $ 122,480
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.23.3
Leases - Narrative (Details)
ft² in Thousands, $ in Thousands
1 Months Ended 3 Months Ended 9 Months Ended
Jun. 30, 2023
USD ($)
ft²
lease_component
Dec. 31, 2021
ft²
Oct. 01, 2023
USD ($)
Oct. 02, 2022
USD ($)
Oct. 01, 2023
USD ($)
Oct. 02, 2022
USD ($)
Dec. 31, 2022
USD ($)
Lessee, Lease, Description [Line Items]              
Operating lease, cost     $ 5,512 $ 2,255 $ 8,151 $ 6,699  
Operating lease, payments     5,168 2,161 7,532 6,467  
Lease, cost     132 35 292 110  
Operating lease liability     68,432   68,432   $ 39,752
Operating lease assets     66,760   66,760   $ 37,682
Future lease payments     92,210   92,210    
Remainder of fiscal 2023     $ 2,510   $ 2,510    
Weighted average discount rate     5.40%   5.40%   3.30%
Weighted average remaining lease term     10 years 9 months 18 days   10 years 9 months 18 days   7 years 9 months 18 days
Singapore              
Lessee, Lease, Description [Line Items]              
Rentable area | ft² 115            
Lease components | lease_component 2            
Singapore | 88,000 square-foot premises              
Lessee, Lease, Description [Line Items]              
Operating lease liability $ 29,639            
Rentable area | ft² 88            
Term of contract 10 years 6 months            
Option to renew, term of contract 5 years            
Operating lease assets $ 29,639            
Singapore | 27,000 square-foot premises              
Lessee, Lease, Description [Line Items]              
Rentable area | ft² 27            
Term of contract 8 years            
Option to renew, term of contract 5 years            
Future lease payments     $ 13,231   $ 13,231    
Remainder of fiscal 2023     $ 0   $ 0    
Southborough, Massachusetts              
Lessee, Lease, Description [Line Items]              
Operating lease liability       9,271   9,271  
Rentable area | ft²   65          
Term of contract   10 years          
Option to renew, term of contract   5 years          
Operating lease assets       $ 9,271   $ 9,271  
XML 63 R53.htm IDEA: XBRL DOCUMENT v3.23.3
Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)
$ in Thousands
Oct. 01, 2023
USD ($)
Leases [Abstract]  
Remainder of fiscal 2023 $ 2,510
2024 11,580
2025 9,677
2026 7,799
2027 7,231
2028 6,992
Thereafter 46,421
Total $ 92,210
XML 64 R54.htm IDEA: XBRL DOCUMENT v3.23.3
Goodwill (Details)
$ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
Goodwill [Roll Forward]  
Balance as of December 31, 2022 $ 242,630
Foreign exchange rate changes (1,588)
Balance as of October 1, 2023 $ 241,042
XML 65 R55.htm IDEA: XBRL DOCUMENT v3.23.3
Intangible Assets (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks    
Gross Carrying Value $ 34,195 $ 34,195
Accumulated Amortization (24,209) (21,781)
Net Carrying Value 9,986 12,414
Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]    
Net Carrying Value 9,986 12,414
Indefinite-lived intangible asset excluding in-process technologies    
Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks    
Net Carrying Value 9,986  
Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]    
Remainder of fiscal 2023 709  
2024 2,623  
2025 2,300  
2026 1,995  
2027 1,273  
2028 543  
Thereafter 543  
Net Carrying Value 9,986  
Completed technologies    
Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks    
Gross Carrying Value 28,017 28,017
Accumulated Amortization (19,590) (17,744)
Net Carrying Value 8,427 10,273
Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]    
Net Carrying Value 8,427 10,273
Customer relationships    
Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks    
Gross Carrying Value 5,838 5,838
Accumulated Amortization (4,400) (3,860)
Net Carrying Value 1,438 1,978
Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]    
Net Carrying Value 1,438 1,978
Non-compete agreements    
Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks    
Gross Carrying Value 340 340
Accumulated Amortization (219) (177)
Net Carrying Value 121 163
Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]    
Net Carrying Value $ 121 $ 163
XML 66 R56.htm IDEA: XBRL DOCUMENT v3.23.3
Warranty Obligations (Detail)
$ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
Movement in Standard Product Warranty Accrual [Roll Forward]  
Beginning balance $ 4,375
Provisions for warranties issued during the period 1,722
Fulfillment of warranty obligations (2,292)
Ending balance $ 3,805
XML 67 R57.htm IDEA: XBRL DOCUMENT v3.23.3
Commitment and Contingencies (Details)
$ in Thousands
Oct. 01, 2023
USD ($)
Commitments and Contingencies Disclosure [Abstract]  
Outstanding purchase orders $ 70,635
XML 68 R58.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments - Narrative (Details)
3 Months Ended 9 Months Ended
Oct. 01, 2023
USD ($)
Oct. 02, 2022
USD ($)
Oct. 01, 2023
USD ($)
Oct. 02, 2022
USD ($)
Oct. 01, 2023
JPY (¥)
Foreign Exchange Forward          
Derivative Instruments and Hedging Activities Disclosures [Line Items]          
Derivative, Notional Amount | ¥         ¥ 40,000,000,000
Gains (losses) recognized in current operations $ 8,456,000        
Not Designated as Hedging Instrument          
Derivative Instruments and Hedging Activities Disclosures [Line Items]          
Remaining maturity of foreign currency derivatives (up to)     3 months    
Gains (losses) recognized in current operations $ (7,527,000) $ 7,161,000 $ (8,139,000) $ 15,091,000  
XML 69 R59.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments - Outstanding Forward Contracts Table (Details) - Not Designated as Hedging Instrument
€ in Thousands, ¥ in Thousands, ¥ in Thousands, £ in Thousands, SFr in Thousands, Ft in Thousands, $ in Thousands, $ in Thousands, $ in Thousands, $ in Thousands
Oct. 01, 2023
JPY (¥)
Oct. 01, 2023
USD ($)
Oct. 01, 2023
EUR (€)
Oct. 01, 2023
SGD ($)
Oct. 01, 2023
CNY (¥)
Oct. 01, 2023
MXN ($)
Oct. 01, 2023
HUF (Ft)
Oct. 01, 2023
GBP (£)
Oct. 01, 2023
CAD ($)
Oct. 01, 2023
CHF (SFr)
Dec. 31, 2022
JPY (¥)
Dec. 31, 2022
USD ($)
Dec. 31, 2022
EUR (€)
Dec. 31, 2022
SGD ($)
Dec. 31, 2022
CNY (¥)
Dec. 31, 2022
MXN ($)
Dec. 31, 2022
HUF (Ft)
Dec. 31, 2022
GBP (£)
Dec. 31, 2022
CAD ($)
Dec. 31, 2022
CHF (SFr)
Japanese Yen                                        
Derivative [Line Items]                                        
Outstanding forward contracts ¥ 40,600,000 $ 272,499                 ¥ 700,000 $ 5,281                
Euro                                        
Derivative [Line Items]                                        
Outstanding forward contracts   39,741 € 37,500                 64,174 € 60,000              
Singapore Dollar                                        
Derivative [Line Items]                                        
Outstanding forward contracts   29,747   $ 40,500               0   $ 0            
Chinese Renminbi                                        
Derivative [Line Items]                                        
Outstanding forward contracts   27,445     ¥ 200,000             7,619     ¥ 55,000          
Mexican Peso                                        
Derivative [Line Items]                                        
Outstanding forward contracts   5,722       $ 100,000           9,480       $ 185,000        
Hungarian Forint                                        
Derivative [Line Items]                                        
Outstanding forward contracts   5,221         Ft 1,930,000         4,238         Ft 1,590,000      
British Pound                                        
Derivative [Line Items]                                        
Outstanding forward contracts   3,956           £ 3,230       4,161           £ 3,445    
Canadian Dollar                                        
Derivative [Line Items]                                        
Outstanding forward contracts   1,225             $ 1,650     1,278             $ 1,730  
Swiss Franc                                        
Derivative [Line Items]                                        
Outstanding forward contracts   $ 0               SFr 0   $ 1,218               SFr 1,120
XML 70 R60.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Derivatives, Fair Value [Line Items]    
Derivative asset $ 196 $ 27
Derivative liability 128 479
Not Designated as Hedging Instrument    
Derivatives, Fair Value [Line Items]    
Derivative asset 196 27
Derivative liability $ 128 $ 479
XML 71 R61.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments - Offsetting Assets (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Derivative Instruments and Hedging Activities Disclosure [Abstract]    
Gross amounts of recognized assets $ 196 $ 27
Gross amounts offset 0 0
Net amount of assets presented 196 27
Gross amounts of recognized liabilities 128 479
Gross amounts offset 0 0
Net amount of liabilities presented $ 128 $ 479
XML 72 R62.htm IDEA: XBRL DOCUMENT v3.23.3
Derivative Instruments - Derivative Instruments, Gain (Loss) (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Not Designated as Hedging Instrument        
Derivative Instruments, Gain (Loss) [Line Items]        
Gains (losses) recognized in current operations $ (7,527) $ 7,161 $ (8,139) $ 15,091
XML 73 R63.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition - Revenue Disaggregated by Geography (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Disaggregation of Revenue [Line Items]        
Revenue $ 197,241 $ 209,622 $ 640,877 $ 766,657
Americas        
Disaggregation of Revenue [Line Items]        
Revenue 80,156 65,847 243,067 284,057
Europe        
Disaggregation of Revenue [Line Items]        
Revenue 51,827 48,930 168,529 173,561
Greater China        
Disaggregation of Revenue [Line Items]        
Revenue 34,485 66,460 139,837 193,481
Other Asia        
Disaggregation of Revenue [Line Items]        
Revenue $ 30,773 $ 28,385 $ 89,444 $ 115,558
XML 74 R64.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition - Revenue Disaggregated by Products and Services (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Revenue from External Customer [Line Items]        
Revenue $ 197,241 $ 209,622 $ 640,877 $ 766,657
Standard products and services        
Revenue from External Customer [Line Items]        
Revenue 170,104 158,244 555,831 637,598
Application-specific customer solutions        
Revenue from External Customer [Line Items]        
Revenue $ 27,137 $ 51,378 $ 85,046 $ 129,059
XML 75 R65.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition - Additional Information (Details) - USD ($)
$ in Thousands
Oct. 01, 2023
Dec. 31, 2022
Revenue from Contract with Customer [Abstract]    
Costs to fulfill contract $ 17,827 $ 14,578
XML 76 R66.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition - Schedule of Allowance for Credit Loss (Details)
$ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
Accounts Receivable, Allowance for Credit Loss [Roll Forward]  
Balance as of December 31, 2022 $ 730
Increases to the allowance for credit losses 350
Write-offs, net of recoveries (500)
Foreign exchange rate changes 0
Balance as of October 1, 2023 $ 580
XML 77 R67.htm IDEA: XBRL DOCUMENT v3.23.3
Revenue Recognition - Deferred Revenue Activity (Details)
$ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
Movement in Deferred Revenue [Roll Forward]  
Balance as of December 31, 2022 $ 40,787
Deferral of revenue billed in the current period, net of recognition 28,249
Recognition of revenue deferred in prior period (18,809)
Returned customer deposit 9,205
Foreign exchange rate changes (776)
Balance as of October 1, 2023 $ 40,246
XML 78 R68.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Narrative (Details)
3 Months Ended 5 Months Ended 9 Months Ended
Oct. 01, 2023
USD ($)
group
$ / shares
shares
Oct. 02, 2022
USD ($)
$ / shares
shares
Oct. 01, 2023
USD ($)
group
shares
Oct. 01, 2023
USD ($)
group
$ / shares
shares
Oct. 02, 2022
USD ($)
$ / shares
shares
May 03, 2023
shares
Dec. 31, 2022
USD ($)
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Weighted-average grant-date fair values (in dollars per share) | $ / shares $ 20.55 $ 18.81   $ 18.11 $ 21.40    
Total intrinsic value | $ $ 557,000 $ 516,000   $ 6,119,000 $ 3,615,000    
Total fair values of stock options vest | $ $ 962,000 1,159,000   $ 33,035,000 27,882,000    
Groups within the employee population | group 3   3 3      
Estimated forfeiture rate for unvested options for CEO 0   0 0      
Estimated annual forfeiture rate for unvested options for senior management 8.00%   8.00% 8.00%      
Estimated annual forfeiture rate for unvested options for all other employees 13.00%   13.00% 13.00%      
Decrease in compensation expense due to revised estimated forfeiture rates | $       $ 234,000      
Increase in compensation expense due to revised estimated forfeiture rates | $         1,536,000    
Unrecognized compensation expense | $ $ 68,509,000   $ 68,509,000 $ 68,509,000      
Weighted average period to be recognized       2 years      
Stock-based compensation expense | $ 12,365,000 13,366,000   $ 41,518,000 41,419,000    
Tax benefit from compensation expense | $ 1,971,000 $ 2,133,000   6,053,000 $ 6,496,000    
Recognized period costs capitalized | $ $ 0   $ 0 $ 0     $ 0
2001 Plan and 2007 Plan              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Shares available for grant under stock option plans (in shares) | shares           10,610,800  
2023 Plan              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Shares auhtorised for grant under stock option plans (in shares) | shares 8,314,024   8,314,024 8,314,024   8,100,000  
Additional shares available for grant under stock option plans (in shares) | shares     214,024        
Employee Stock Option              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Shares available for grant under stock option plans (in shares) | shares 8,035,000   8,035,000 8,035,000      
Expiration period from grant day       10 years      
Restricted Stock Units (RSUs)              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Granted (in dollars per share) | $ / shares $ 46.17 $ 47.12   $ 46.78 $ 58.44    
Vested (in shares) | shares 18,000 67,000   500,000 141,000    
Granted (in shares) | shares       748,000      
Performance Shares (PRSUs)              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Vesting period for stock option plans       3 years      
Granted (in dollars per share) | $ / shares       $ 44.86      
Vested (in shares) | shares 0 0   0 0    
Granted (in shares) | shares 0 0   46,000 33,000    
Minimum | General Stock Option Plan              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Vesting period for stock option plans       4 years      
Minimum | Restricted Stock Units (RSUs)              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Vesting period for stock option plans       3 years      
Maximum | General Stock Option Plan              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Vesting period for stock option plans       5 years      
Maximum | Restricted Stock Units (RSUs)              
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]              
Vesting period for stock option plans       4 years      
XML 79 R69.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)
$ / shares in Units, shares in Thousands, $ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
$ / shares
shares
Shares (in thousands)  
Outstanding (in shares) | shares 8,467
Granted (in shares) | shares 1,395
Exercised (in shares) | shares (325)
Forfeited or expired (in shares) | shares (562)
Outstanding (in shares) | shares 8,975
Exercisable as of reporting date (in shares) | shares 5,182
Options vested or expected to vest as of reporting date (in shares) | shares 8,493
Weighted- Average Exercise Price  
Outstanding (in dollars per shares) | $ / shares $ 51.56
Granted (in dollars per shares) | $ / shares 47.49
Exercised (in dollars per shares) | $ / shares 33.87
Forfeited or expired (in dollars per shares) | $ / shares 57.71
Outstanding (in dollars per shares) | $ / shares 51.19
Exercisable as of reporting date (in dollars per shares) | $ / shares 47.67
Vested and expected to vest (in dollars per shares) | $ / shares $ 51.01
Weighted- Average Remaining Contractual Term (in years)  
Outstanding (in years) 6 years 1 month 17 days
Exercisable (in years) 4 years 8 months 1 day
Options vested or expected to vest (in years) 5 years 11 months 23 days
Aggregate Intrinsic Value (in thousands)  
Outstanding | $ $ 17,396
Exercisable | $ 17,378
Options vested or expected to vest | $ $ 17,396
XML 80 R70.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Share-Based Payment Arrangement [Abstract]        
Risk-free rate 4.10% 2.70% 4.00% 2.10%
Expected dividend yield 0.57% 0.54% 0.59% 0.44%
Expected volatility 39.00% 37.00% 39.00% 37.00%
Expected term (in years) 5 years 10 months 24 days 6 years 4 months 24 days 4 years 10 months 24 days 5 years 6 months
XML 81 R71.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details) - Restricted Stock Units (RSUs) - $ / shares
shares in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Shares (in thousands)        
Nonvested as of beginning of period (in shares)     1,269  
Granted (in shares)     748  
Vested (in shares) 18 67 500 141
Forfeited or expired (in shares)     (86)  
Nonvested as of end of period (in shares) 1,431   1,431  
Weighted-Average Grant Date Fair Value        
Nonvested as of beginning of period (in dollars per share)     $ 61.74  
Granted (in dollars per share) $ 46.17 $ 47.12 46.78 $ 58.44
Vested (in dollars per share)     59.43  
Forfeited or expired (in dollars per share)     60.65  
Nonvested as of end of period (in dollars per share) $ 54.79   $ 54.79  
XML 82 R72.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details) - Performance Shares (PRSUs) - $ / shares
shares in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Shares (in thousands)        
Nonvested as of beginning of period (in shares)     33  
Granted (in shares) 0 0 46 33
Vested (in shares) 0 0 0 0
Forfeited or expired (in shares)     0  
Nonvested as of end of period (in shares) 79   79  
Weighted-Average Grant Date Fair Value        
Nonvested as of beginning of period (in dollars per share)     $ 62.49  
Granted (in dollars per share)     44.86  
Vested (in dollars per share)     0  
Forfeited or expired (in dollars per share)     0  
Nonvested as of end of period (in dollars per share) $ 52.23   $ 52.23  
XML 83 R73.htm IDEA: XBRL DOCUMENT v3.23.3
Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]        
Stock-based compensation expense $ 12,365 $ 13,366 $ 41,518 $ 41,419
Cost of revenue        
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]        
Stock-based compensation expense 435 468 1,497 1,513
Research, development, and engineering        
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]        
Stock-based compensation expense 3,459 4,209 12,657 12,508
Selling, general, and administrative        
Employee Service Share-based Compensation, Allocation of Recognized Period Costs [Line Items]        
Stock-based compensation expense $ 8,471 $ 8,689 $ 27,364 $ 27,398
XML 84 R74.htm IDEA: XBRL DOCUMENT v3.23.3
Stock Repurchase Program (Details) - USD ($)
$ in Thousands
9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Mar. 03, 2022
Mar. 12, 2020
Repurchase Program March 2020        
Equity, Class of Treasury Stock [Line Items]        
Stock repurchase program, authorized amount       $ 200,000
Shares repurchased (in shares)   1,677,000    
Value of shares repurchased at cost   $ 117,000    
Stock Repurchased During Prior Period, Settled in Current Period   5,000    
Stock Repurchased During Prior Period, Settled in Current Period   5,000    
Repurchase Program March 2022        
Equity, Class of Treasury Stock [Line Items]        
Stock repurchase program, authorized amount     $ 500,000  
Shares repurchased (in shares) 1,157,000 1,125,000    
Value of shares repurchased at cost $ 59,640 $ 61,387    
Remaining authorized repurchase amount $ 353,046      
XML 85 R75.htm IDEA: XBRL DOCUMENT v3.23.3
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Income Tax Contingency [Line Items]        
Effective tax rate 30.00% 14.00% 16.00% 16.00%
Discrete tax expense (benefit) $ 4,035 $ (2) $ (840) $ 3,984
Increase in tax expense related to stock-based compensation     1,769 307
Increase in tax expense related to state income taxes     2,178  
Decrease in tax expense arising from tax settlement     3,043 2,461
Change in tax expense related to valuation allowance     2,198  
Increase in tax expense related to transfer pricing and return-to-provision adjustments     2,134 3,822
Increase in tax expense to establish reserve against certain deferred tax assets       $ 2,316
Liability for uncertain tax positions $ 19,450   $ 19,450  
Tax years open to examination by Internal Revenue Service     2019 through 2022  
Tax years open to examination by various taxing authorities for other entities     2017 through 2022  
Foreign Tax Authority | Ireland        
Income Tax Contingency [Line Items]        
Statutory tax rate     12.50%  
Foreign Tax Authority | China        
Income Tax Contingency [Line Items]        
Statutory tax rate     25.00%  
Foreign Tax Authority | Korea        
Income Tax Contingency [Line Items]        
Statutory tax rate     22.00%  
Domestic Tax Authority        
Income Tax Contingency [Line Items]        
Statutory tax rate     21.00%  
XML 86 R76.htm IDEA: XBRL DOCUMENT v3.23.3
Weighted-Average Shares - Calculation of Weighted-Average Shares (Details) - shares
shares in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Earnings Per Share [Abstract]        
Basic weighted-average common shares outstanding (in shares) 172,169 173,256 172,408 173,640
Effect of dilutive equity awards (in shares) 1,185 1,071 1,251 1,593
Weighted-average common and common-equivalent shares outstanding (in shares) 173,354 174,327 173,659 175,233
XML 87 R77.htm IDEA: XBRL DOCUMENT v3.23.3
Weighted-Average Shares - Narrative (Details) - shares
3 Months Ended 9 Months Ended
Oct. 01, 2023
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Employee Stock Option        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Anti-dilutive securities excluded from computation of earnings per share (shares) 6,893,000 6,167,000 6,775,000 3,297,000
Restricted Stock        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Anti-dilutive securities excluded from computation of earnings per share (shares) 3,000 607,000 1,000 26,000
Performance Shares (PRSUs)        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Anti-dilutive securities excluded from computation of earnings per share (shares) 0 33,000 0 0
XML 88 R78.htm IDEA: XBRL DOCUMENT v3.23.3
Loss (Recovery) from Fire (Details) - Fire - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Oct. 01, 2023
Jul. 02, 2023
Dec. 31, 2022
Oct. 02, 2022
Oct. 01, 2023
Oct. 02, 2022
Unusual or Infrequent Item, or Both [Line Items]            
Loss from fire           $ 20,294
Loss from fire, inventories and other assets       $ 2,891   47,794
Estimated insurance recoveries $ 2,750     $ 27,500 $ 2,750 $ 27,500
Insurance recoveries     $ 27,560   $ 5,250  
Insurance recoveries, business interruption   $ 2,500        
Insurance recoveries, inventory and other losses $ 2,750          
XML 89 R79.htm IDEA: XBRL DOCUMENT v3.23.3
Restructuring Charges (Details) - Accrued expenses - December 2022
$ in Thousands
9 Months Ended
Oct. 01, 2023
USD ($)
Restructuring Reserve [Roll Forward]  
Balance at beginning of period $ 1,039
Cash payments (1,029)
Foreign exchange rate changes (10)
Balance at end of period 20
One-time Termination Benefits  
Restructuring Reserve [Roll Forward]  
Balance at beginning of period 964
Cash payments (973)
Foreign exchange rate changes (9)
Balance at end of period 0
Contract Termination Costs  
Restructuring Reserve [Roll Forward]  
Balance at beginning of period 75
Cash payments (56)
Foreign exchange rate changes (1)
Balance at end of period $ 20
XML 90 R80.htm IDEA: XBRL DOCUMENT v3.23.3
Subsequent Events (Details) - Subsequent Event
$ / shares in Units, ¥ in Thousands, $ in Thousands
Oct. 31, 2023
$ / shares
Oct. 18, 2023
JPY (¥)
Oct. 18, 2023
USD ($)
Subsequent Event [Line Items]      
Dividends (in dollars per share) $ 0.075    
Moritex Corporation      
Subsequent Event [Line Items]      
Business Acquisition, Effective Date of Acquisition   Oct. 18, 2023 Oct. 18, 2023
Payments to Acquire Businesses, Gross   ¥ 40,000,000 $ 270,000
Business Acquisition, Effective Date of Acquisition   Oct. 18, 2023 Oct. 18, 2023
Payments to Acquire Businesses, Gross   ¥ 40,000,000 $ 270,000
XML 91 cgnx-20231001_htm.xml IDEA: XBRL DOCUMENT 0000851205 2023-01-01 2023-10-01 0000851205 2023-10-01 0000851205 2023-07-03 2023-10-01 0000851205 2022-07-04 2022-10-02 0000851205 2022-01-01 2022-10-02 0000851205 2022-12-31 0000851205 2021-12-31 0000851205 2022-10-02 0000851205 us-gaap:CommonStockMember 2023-07-02 0000851205 us-gaap:AdditionalPaidInCapitalMember 2023-07-02 0000851205 us-gaap:RetainedEarningsMember 2023-07-02 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-02 0000851205 2023-07-02 0000851205 us-gaap:CommonStockMember 2023-07-03 2023-10-01 0000851205 us-gaap:AdditionalPaidInCapitalMember 2023-07-03 2023-10-01 0000851205 us-gaap:RetainedEarningsMember 2023-07-03 2023-10-01 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-07-03 2023-10-01 0000851205 us-gaap:CommonStockMember 2023-10-01 0000851205 us-gaap:AdditionalPaidInCapitalMember 2023-10-01 0000851205 us-gaap:RetainedEarningsMember 2023-10-01 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-10-01 0000851205 us-gaap:CommonStockMember 2022-07-03 0000851205 us-gaap:AdditionalPaidInCapitalMember 2022-07-03 0000851205 us-gaap:RetainedEarningsMember 2022-07-03 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-03 0000851205 2022-07-03 0000851205 us-gaap:CommonStockMember 2022-07-04 2022-10-02 0000851205 us-gaap:AdditionalPaidInCapitalMember 2022-07-04 2022-10-02 0000851205 us-gaap:RetainedEarningsMember 2022-07-04 2022-10-02 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-04 2022-10-02 0000851205 us-gaap:CommonStockMember 2022-10-02 0000851205 us-gaap:AdditionalPaidInCapitalMember 2022-10-02 0000851205 us-gaap:RetainedEarningsMember 2022-10-02 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-10-02 0000851205 us-gaap:CommonStockMember 2022-12-31 0000851205 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000851205 us-gaap:RetainedEarningsMember 2022-12-31 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0000851205 us-gaap:CommonStockMember 2023-01-01 2023-10-01 0000851205 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-10-01 0000851205 us-gaap:RetainedEarningsMember 2023-01-01 2023-10-01 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-10-01 0000851205 us-gaap:CommonStockMember 2021-12-31 0000851205 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000851205 us-gaap:RetainedEarningsMember 2021-12-31 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0000851205 us-gaap:CommonStockMember 2022-01-01 2022-10-02 0000851205 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-10-02 0000851205 us-gaap:RetainedEarningsMember 2022-01-01 2022-10-02 0000851205 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-10-02 0000851205 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel1Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel2Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 us-gaap:FairValueInputsLevel3Member us-gaap:FairValueMeasurementsRecurringMember us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 us-gaap:CorporateBondSecuritiesMember 2022-12-31 0000851205 us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 us-gaap:AssetBackedSecuritiesMember 2022-12-31 0000851205 us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 us-gaap:USTreasurySecuritiesMember 2022-12-31 0000851205 us-gaap:SovereignDebtMember 2023-10-01 0000851205 us-gaap:SovereignDebtMember 2022-12-31 0000851205 cgnx:AgencyBondsMember 2023-10-01 0000851205 cgnx:AgencyBondsMember 2022-12-31 0000851205 us-gaap:MunicipalBondsMember 2023-10-01 0000851205 us-gaap:MunicipalBondsMember 2022-12-31 0000851205 us-gaap:OtherCurrentAssetsMember 2023-10-01 0000851205 us-gaap:OtherCurrentAssetsMember 2022-12-31 0000851205 cgnx:CurrentAssetsMember us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 cgnx:CurrentAssetsMember us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 cgnx:CurrentAssetsMember us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 cgnx:CurrentAssetsMember us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 cgnx:NonCurrentAssetsMember us-gaap:CorporateBondSecuritiesMember 2023-10-01 0000851205 cgnx:NonCurrentAssetsMember us-gaap:USTreasurySecuritiesMember 2023-10-01 0000851205 cgnx:NonCurrentAssetsMember us-gaap:AssetBackedSecuritiesMember 2023-10-01 0000851205 cgnx:NonCurrentAssetsMember us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 us-gaap:SovereignDebtSecuritiesMember 2023-10-01 0000851205 country:SG 2023-06-30 0000851205 country:SG cgnx:A88000SquareFootPremisesMember 2023-06-30 0000851205 country:SG cgnx:A88000SquareFootPremisesMember 2023-06-01 2023-06-30 0000851205 country:SG cgnx:A27000SquareFootPremisesMember 2023-06-30 0000851205 country:SG cgnx:A27000SquareFootPremisesMember 2023-06-01 2023-06-30 0000851205 country:SG cgnx:A27000SquareFootPremisesMember 2023-10-01 0000851205 cgnx:SouthboroughMassachusettsMember 2021-12-31 0000851205 cgnx:SouthboroughMassachusettsMember 2021-12-01 2021-12-31 0000851205 cgnx:SouthboroughMassachusettsMember 2022-10-02 0000851205 us-gaap:DevelopedTechnologyRightsMember 2023-10-01 0000851205 cgnx:CustomerContractsAndRelationshipsMember 2023-10-01 0000851205 us-gaap:OtherIntangibleAssetsMember 2023-10-01 0000851205 us-gaap:DevelopedTechnologyRightsMember 2022-12-31 0000851205 cgnx:CustomerContractsAndRelationshipsMember 2022-12-31 0000851205 us-gaap:OtherIntangibleAssetsMember 2022-12-31 0000851205 cgnx:DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember 2023-10-01 0000851205 us-gaap:NondesignatedMember 2023-01-01 2023-10-01 0000851205 us-gaap:ForeignExchangeForwardMember 2023-10-01 0000851205 us-gaap:ForeignExchangeForwardMember 2023-07-03 2023-10-01 0000851205 currency:JPY us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:JPY us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:EUR us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:EUR us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:SGD us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:SGD us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:CNY us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:CNY us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:MXN us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:MXN us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:HUF us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:HUF us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:GBP us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:GBP us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:CAD us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:CAD us-gaap:NondesignatedMember 2022-12-31 0000851205 currency:CHF us-gaap:NondesignatedMember 2023-10-01 0000851205 currency:CHF us-gaap:NondesignatedMember 2022-12-31 0000851205 us-gaap:NondesignatedMember 2023-10-01 0000851205 us-gaap:NondesignatedMember 2022-12-31 0000851205 us-gaap:NondesignatedMember 2023-07-03 2023-10-01 0000851205 us-gaap:NondesignatedMember 2022-07-04 2022-10-02 0000851205 us-gaap:NondesignatedMember 2022-01-01 2022-10-02 0000851205 srt:AmericasMember 2023-07-03 2023-10-01 0000851205 srt:AmericasMember 2022-07-04 2022-10-02 0000851205 srt:AmericasMember 2023-01-01 2023-10-01 0000851205 srt:AmericasMember 2022-01-01 2022-10-02 0000851205 srt:EuropeMember 2023-07-03 2023-10-01 0000851205 srt:EuropeMember 2022-07-04 2022-10-02 0000851205 srt:EuropeMember 2023-01-01 2023-10-01 0000851205 srt:EuropeMember 2022-01-01 2022-10-02 0000851205 country:CN 2023-07-03 2023-10-01 0000851205 country:CN 2022-07-04 2022-10-02 0000851205 country:CN 2023-01-01 2023-10-01 0000851205 country:CN 2022-01-01 2022-10-02 0000851205 cgnx:AsiaExcludingChinaMember 2023-07-03 2023-10-01 0000851205 cgnx:AsiaExcludingChinaMember 2022-07-04 2022-10-02 0000851205 cgnx:AsiaExcludingChinaMember 2023-01-01 2023-10-01 0000851205 cgnx:AsiaExcludingChinaMember 2022-01-01 2022-10-02 0000851205 cgnx:StandardProductsandServicesMember 2023-07-03 2023-10-01 0000851205 cgnx:StandardProductsandServicesMember 2022-07-04 2022-10-02 0000851205 cgnx:StandardProductsandServicesMember 2023-01-01 2023-10-01 0000851205 cgnx:StandardProductsandServicesMember 2022-01-01 2022-10-02 0000851205 cgnx:ApplicationSpecificCustomerSolutionsMember 2023-07-03 2023-10-01 0000851205 cgnx:ApplicationSpecificCustomerSolutionsMember 2022-07-04 2022-10-02 0000851205 cgnx:ApplicationSpecificCustomerSolutionsMember 2023-01-01 2023-10-01 0000851205 cgnx:ApplicationSpecificCustomerSolutionsMember 2022-01-01 2022-10-02 0000851205 cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember 2023-05-03 0000851205 cgnx:CognexCorporation2021And2007StockOptionAndIncentivePlansMember 2023-05-03 0000851205 cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember 2023-05-04 2023-10-01 0000851205 cgnx:CognexCorporation2023StockOptionAndIncentivePlanMember 2023-10-01 0000851205 us-gaap:EmployeeStockOptionMember 2023-10-01 0000851205 srt:MinimumMember cgnx:GeneralStockOptionPlanMember 2023-01-01 2023-10-01 0000851205 srt:MaximumMember cgnx:GeneralStockOptionPlanMember 2023-01-01 2023-10-01 0000851205 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-10-01 0000851205 srt:MinimumMember us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-10-01 0000851205 srt:MaximumMember us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-10-01 0000851205 us-gaap:PerformanceSharesMember 2023-01-01 2023-10-01 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2022-12-31 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2023-01-01 2023-10-01 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2023-10-01 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2023-07-03 2023-10-01 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2022-07-04 2022-10-02 0000851205 us-gaap:RestrictedStockUnitsRSUMember 2022-01-01 2022-10-02 0000851205 us-gaap:PerformanceSharesMember 2022-12-31 0000851205 us-gaap:PerformanceSharesMember 2023-10-01 0000851205 us-gaap:PerformanceSharesMember 2022-07-04 2022-10-02 0000851205 us-gaap:PerformanceSharesMember 2023-07-03 2023-10-01 0000851205 us-gaap:PerformanceSharesMember 2022-01-01 2022-10-02 0000851205 us-gaap:CostOfGoodsTotalMember 2023-07-03 2023-10-01 0000851205 us-gaap:CostOfGoodsTotalMember 2022-07-04 2022-10-02 0000851205 us-gaap:CostOfGoodsTotalMember 2023-01-01 2023-10-01 0000851205 us-gaap:CostOfGoodsTotalMember 2022-01-01 2022-10-02 0000851205 us-gaap:ResearchAndDevelopmentExpenseMember 2023-07-03 2023-10-01 0000851205 us-gaap:ResearchAndDevelopmentExpenseMember 2022-07-04 2022-10-02 0000851205 us-gaap:ResearchAndDevelopmentExpenseMember 2023-01-01 2023-10-01 0000851205 us-gaap:ResearchAndDevelopmentExpenseMember 2022-01-01 2022-10-02 0000851205 cgnx:SellingGeneralAndAdministrativeMember 2023-07-03 2023-10-01 0000851205 cgnx:SellingGeneralAndAdministrativeMember 2022-07-04 2022-10-02 0000851205 cgnx:SellingGeneralAndAdministrativeMember 2023-01-01 2023-10-01 0000851205 cgnx:SellingGeneralAndAdministrativeMember 2022-01-01 2022-10-02 0000851205 cgnx:RepurchaseProgramMarch2020Member 2020-03-12 0000851205 cgnx:RepurchaseProgramMarch2020Member 2022-01-01 2022-10-02 0000851205 cgnx:RepurchaseProgramMarch2022Member 2022-03-03 0000851205 cgnx:RepurchaseProgramMarch2022Member 2022-01-01 2022-10-02 0000851205 cgnx:RepurchaseProgramMarch2022Member 2023-01-01 2023-10-01 0000851205 cgnx:RepurchaseProgramMarch2022Member 2023-10-01 0000851205 us-gaap:ForeignCountryMember us-gaap:RevenueCommissionersIrelandMember 2023-01-01 2023-10-01 0000851205 us-gaap:ForeignCountryMember us-gaap:StateAdministrationOfTaxationChinaMember 2023-01-01 2023-10-01 0000851205 us-gaap:ForeignCountryMember country:KP 2023-01-01 2023-10-01 0000851205 us-gaap:DomesticCountryMember 2023-01-01 2023-10-01 0000851205 us-gaap:EmployeeStockOptionMember 2023-07-03 2023-10-01 0000851205 us-gaap:EmployeeStockOptionMember 2023-01-01 2023-10-01 0000851205 us-gaap:EmployeeStockOptionMember 2022-07-04 2022-10-02 0000851205 us-gaap:EmployeeStockOptionMember 2022-01-01 2022-10-02 0000851205 us-gaap:RestrictedStockMember 2023-07-03 2023-10-01 0000851205 us-gaap:RestrictedStockMember 2023-01-01 2023-10-01 0000851205 us-gaap:RestrictedStockMember 2022-07-04 2022-10-02 0000851205 us-gaap:RestrictedStockMember 2022-01-01 2022-10-02 0000851205 us-gaap:PerformanceSharesMember 2023-07-03 2023-10-01 0000851205 us-gaap:PerformanceSharesMember 2023-01-01 2023-10-01 0000851205 us-gaap:PerformanceSharesMember 2022-07-04 2022-10-02 0000851205 us-gaap:PerformanceSharesMember 2022-01-01 2022-10-02 0000851205 us-gaap:FireMember 2022-01-01 2022-10-02 0000851205 us-gaap:FireMember 2022-07-04 2022-10-02 0000851205 us-gaap:FireMember 2022-10-02 0000851205 us-gaap:FireMember 2022-10-03 2022-12-31 0000851205 us-gaap:FireMember 2023-01-01 2023-10-01 0000851205 us-gaap:FireMember 2023-04-03 2023-07-02 0000851205 us-gaap:FireMember 2023-07-03 2023-10-01 0000851205 us-gaap:FireMember 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:OneTimeTerminationBenefitsMember cgnx:December2022Member 2022-12-31 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:ContractTerminationMember cgnx:December2022Member 2022-12-31 0000851205 us-gaap:AccruedLiabilitiesMember cgnx:December2022Member 2022-12-31 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:OneTimeTerminationBenefitsMember cgnx:December2022Member 2023-01-01 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:ContractTerminationMember cgnx:December2022Member 2023-01-01 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember cgnx:December2022Member 2023-01-01 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:OneTimeTerminationBenefitsMember cgnx:December2022Member 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember us-gaap:ContractTerminationMember cgnx:December2022Member 2023-10-01 0000851205 us-gaap:AccruedLiabilitiesMember cgnx:December2022Member 2023-10-01 0000851205 cgnx:MoritexCorporationMember us-gaap:SubsequentEventMember 2023-10-18 2023-10-18 0000851205 us-gaap:SubsequentEventMember 2023-10-31 2023-10-31 shares iso4217:USD iso4217:USD shares utr:sqft cgnx:lease_component pure iso4217:JPY iso4217:EUR iso4217:SGD iso4217:CNY iso4217:MXN iso4217:HUF iso4217:GBP iso4217:CAD iso4217:CHF cgnx:group 2023-10-01 0000851205 --12-31 2023 Q3 false P4Y P3Y P3Y 10-Q true false 001-34218 COGNEX CORP MA 04-2713778 One Vision Drive Natick MA 01760 508 650-3000 Common Stock, par value $.002 per share CGNX NASDAQ Yes Yes Large Accelerated Filer false false false 172142092 197241000 209622000 640877000 766657000 54467000 57383000 174680000 214316000 142774000 152239000 466197000 552341000 32580000 33954000 104707000 103999000 82307000 75371000 248767000 236156000 -2750000 2891000 -5250000 20294000 30637000 40023000 117973000 191892000 -8699000 -1880000 -9910000 -4367000 4891000 1416000 12573000 4389000 173000 -214000 358000 -450000 27002000 39345000 120994000 191464000 8086000 5365000 18989000 31250000 18916000 33980000 102005000 160214000 0.11 0.20 0.59 0.92 0.11 0.19 0.59 0.91 172169000 173256000 172408000 173640000 173354000 174327000 173659000 175233000 0.070 0.065 0.210 0.195 18916000 33980000 102005000 160214000 707000 -1564000 1981000 -6298000 738000 -5315000 4458000 -21185000 -624000 -79000 -624000 -103000 1362000 -5236000 5082000 -21082000 -2603000 -7352000 -5828000 -13425000 -2603000 -7352000 -5828000 -13425000 -1241000 -12588000 -746000 -34507000 17675000 21392000 101259000 125707000 395501000 181374000 120831000 223545000 0 0 117147000 218759000 580000 730000 130542000 125417000 1588000 2179000 133866000 122480000 68347000 67490000 846991000 717699000 349060000 476148000 0 0 332991000 454117000 82965000 79714000 66760000 37682000 241042000 242630000 9986000 12414000 403013000 407241000 6151000 6643000 1989899000 1958140000 23053000 27103000 79121000 93235000 19302000 18129000 40246000 40787000 7982000 8454000 169704000 187708000 60450000 31298000 233360000 249961000 19450000 15866000 18337000 33008000 0 1905000 501301000 519746000 0.01 0.01 400000 400000 0 0 0 0 0 0 0.002 0.002 300000000 300000000 172142000 172142000 172631000 172631000 344000 345000 1023960000 979167000 534337000 528179000 -70043000 -69297000 1488598000 1438394000 1989899000 1958140000 102005000 160214000 41518000 41419000 12557000 12176000 2000 -12000 2428000 2468000 1703000 2728000 0 45827000 -1347000 -3976000 -624000 -103000 14691000 14799000 6488000 -31018000 534000 1760000 12954000 35815000 2007000 46817000 -3986000 -21577000 -13214000 -23813000 -13513000 -6644000 -151000 20882000 -2715000 -4031000 98425000 177149000 174330000 77760000 402160000 215876000 16062000 15605000 211768000 122511000 3276000 4225000 59640000 178387000 36209000 33837000 -92573000 -207999000 -3493000 -11818000 214127000 79843000 181374000 186161000 395501000 266004000 172293000 345000 1010973000 537947000 -68802000 1480463000 40000 0 622000 622000 191000 1000 10477000 10478000 12365000 12365000 0.070 12049000 12049000 18916000 18916000 707000 738000 738000 -624000 -624000 -2603000 -2603000 172142000 344000 1023960000 534337000 -70043000 1488598000 173397000 347000 947269000 512230000 -69861000 1389985000 73000 0 -189000 -189000 540000 1000 24069000 24070000 13366000 13366000 0.065 11264000 11264000 33980000 33980000 -1564000 -5315000 -5315000 -79000 -79000 -7352000 -7352000 172930000 346000 960446000 510877000 -82449000 1389220000 172631000 345000 979167000 528179000 -69297000 1438394000 668000 1000 3275000 3276000 1157000 2000 59638000 59640000 41518000 41518000 0.210 36209000 36209000 102005000 102005000 1981000 4458000 4458000 -624000 -624000 -5828000 -5828000 172142000 344000 1023960000 534337000 -70043000 1488598000 175481000 351000 914802000 562882000 -47942000 1430093000 256000 0 4225000 4225000 2807000 5000 178382000 178387000 41419000 41419000 0.195 33837000 33837000 160214000 160214000 -6298000 -21185000 -21185000 -103000 -103000 -13425000 -13425000 172930000 346000 960446000 510877000 -82449000 1389220000 Summary of Significant Accounting Policies<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As permitted by the rules of the Securities and Exchange Commission applicable to Quarterly Reports on Form 10-Q, these notes are condensed and do not contain all disclosures required by generally accepted accounting principles (GAAP). Reference should be made to the consolidated financial statements and related notes included in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022 for a full description of other significant accounting policies.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the opinion of the management of Cognex Corporation (the "Company"), the accompanying consolidated unaudited financial statements contain all adjustments, consisting of normal, recurring adjustments, adjustments related to losses and recoveries from the fire (Note 17), and financial statement reclassifications necessary to present fairly the Company’s financial position as of October 1, 2023, and the results of its operations for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022, and changes in shareholders’ equity, comprehensive income, and cash flows for the periods presented.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The results disclosed in the Consolidated Statements of Operations for the three-month and nine-month periods ended October 1, 2023 are not necessarily indicative of the results to be expected for the full year.</span></div> New Pronouncements<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounting Standards Update (ASU) 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting", (ASU) 2021-01, "Reference Rate Reform (Topic 848): Scope", and Accounting Standards Update (ASU) 2022-06, "Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848"</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amendments in these ASUs apply to all entities that have contracts, hedging relationships, and other transactions that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. Together, the ASUs provide optional expedients and exceptions for applying generally accepted accounting principles (GAAP) to contracts, hedging relationships, and other transactions affected by reference rate reform if certain criteria are met. The expedients and exceptions provided by the amendments do not apply to contract modifications made and hedging relationships entered into or evaluated after December 31, 2024, except for hedging relationships existing as of December 31, 2024 that an entity has elected certain optional expedients for and that are retained through the end of the hedging relationship. The amendments in these ASUs are effective for all entities as of March 12, 2020 through December 31, 2024. Management adopted Topic 848 on January 1, 2023, and now uses the Secured Overnight Financing Rate (SOFR). The adoption did not have a material impact on the Company's financial statements and disclosures.</span></div> New Pronouncements<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounting Standards Update (ASU) 2020-04, "Reference Rate Reform (Topic 848): Facilitation of the Effects of Reference Rate Reform on Financial Reporting", (ASU) 2021-01, "Reference Rate Reform (Topic 848): Scope", and Accounting Standards Update (ASU) 2022-06, "Reference Rate Reform (Topic 848): Deferral of the Sunset Date of Topic 848"</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amendments in these ASUs apply to all entities that have contracts, hedging relationships, and other transactions that reference LIBOR or another reference rate expected to be discontinued because of reference rate reform. Together, the ASUs provide optional expedients and exceptions for applying generally accepted accounting principles (GAAP) to contracts, hedging relationships, and other transactions affected by reference rate reform if certain criteria are met. The expedients and exceptions provided by the amendments do not apply to contract modifications made and hedging relationships entered into or evaluated after December 31, 2024, except for hedging relationships existing as of December 31, 2024 that an entity has elected certain optional expedients for and that are retained through the end of the hedging relationship. The amendments in these ASUs are effective for all entities as of March 12, 2020 through December 31, 2024. Management adopted Topic 848 on January 1, 2023, and now uses the Secured Overnight Financing Rate (SOFR). The adoption did not have a material impact on the Company's financial statements and disclosures.</span></div> Fair Value Measurements<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Financial Assets and Liabilities that are Measured at Fair Value on a Recurring Basis</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of October 1, 2023 (in thousands):</span></div><div style="margin-top:5pt"><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:49.998%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.714%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in<br/>Active Markets<br/>for Identical<br/>Assets (Level 1)</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other<br/>Observable<br/>Inputs (Level 2)</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable Inputs (Level 3)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets:</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><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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market instruments</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241,716 </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:'Arial',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:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,405 </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:'Arial',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="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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:'Arial',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></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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',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="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="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="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="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="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="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:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">196 </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:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liabilities:</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></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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128 </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:'Arial',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></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s money market instruments are reported at fair value based upon the daily market price for identical assets in active markets, and are therefore classified as Level 1. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s debt securities and forward contracts are reported at fair value based on model-driven valuations in which all significant inputs are observable or can be derived from or corroborated by observable market data for substantially the full term of the asset or liability, and are therefore classified as Level 2. Management is responsible for estimating the fair value of these financial assets and liabilities, and in doing so, considers valuations provided by a large, third-party pricing service. For debt securities, this service maintains regular contact with market makers, brokers, dealers, and analysts to gather information on market movement, direction, trends, and other specific data. They use this information to structure yield curves for various types of debt securities and arrive at the daily valuations. The Company's forward contracts are typically traded or executed in over-the-counter markets with a high degree of pricing transparency. The market participants are generally large commercial banks.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Non-financial Assets that are Measured at Fair Value on a Non-recurring Basis</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Non-financial assets, such as property, plant and equipment, operating lease assets, goodwill, and intangible assets, are required to be measured at fair value only when an impairment loss is recognized. The Company did not record impairment charges related to non-financial assets during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.</span></div> <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the financial assets and liabilities required to be measured at fair value on a recurring basis as of October 1, 2023 (in thousands):</span></div><div style="margin-top:5pt"><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:49.998%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.714%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Quoted Prices in<br/>Active Markets<br/>for Identical<br/>Assets (Level 1)</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Significant Other<br/>Observable<br/>Inputs (Level 2)</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unobservable Inputs (Level 3)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Assets:</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><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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market instruments</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241,716 </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:'Arial',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:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,405 </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:'Arial',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="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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:'Arial',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></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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',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="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="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="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="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="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="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:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">196 </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:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Liabilities:</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></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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128 </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:'Arial',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></tr></table></div> 241716000 0 0 0 349405000 0 0 61742000 0 0 37051000 0 0 1940000 0 0 196000 0 0 128000 0 Cash, Cash Equivalents, and Investments<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash, cash equivalents, and investments consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><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:61.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.028%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.031%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">153,785</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,959 </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="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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market instruments</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">241,716</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">415 </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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">395,501</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">181,374 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">110,627</span><span style="color:#000000;font-family:'Arial',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 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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">164,055 </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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,084</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,890 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2,457</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,332 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">979</span><span style="color:#000000;font-family:'Arial',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:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agency bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,858 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">624 </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></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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current investments</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">117,147</span><span style="color:#000000;font-family:'Arial',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 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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218,759 </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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">238,778</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,440 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">59,285</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,214 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">33,967</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,539 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">961</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,924 </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="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="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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current investments</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">332,991</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">454,117 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">845,639</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">854,250 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Corporate bonds consist of debt securities issued by both domestic and foreign companies; asset-backed securities consist of debt securities collateralized by pools of receivables or loans with credit enhancement; treasury bills consist of debt securities issued by the U.S. government; sovereign bonds consist of direct debt issued by foreign governments; agency bonds consist of domestic or foreign obligations of government agencies and government-sponsored enterprises that have government backing; and municipal bonds consist of debt securities issued by state and local government entities. All of the Company's securities as of October 1, 2023 and December 31, 2022 were denominated in U.S. Dollars.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accrued interest receivable is recorded in "Prepaid expenses and other current assets" on the Consolidated Balance Sheets and amounted to $4,094,000 and $3,620,000 as of October 1, 2023 and December 31, 2022, respectively.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s available-for-sale investments as of October 1, 2023 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:42.741%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.243%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.389%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.392%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amortized<br/>Cost</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Unrealized<br/>Gains</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Unrealized<br/>Losses</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</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><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><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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,188 </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:'Arial',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:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,561)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110,627 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,128 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,498 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,457 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(38)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979 </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></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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current:</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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">251,635 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,866)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,778 </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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,871 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,586)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,285 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,512 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,545)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,967 </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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,042 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(81)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">961 </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><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:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">469,891</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,762)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">450,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of October 1, 2023 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:30.711%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.654%"></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:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized Loss Position For:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> </span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Less than 12 Months</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">12 Months or Greater</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,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 style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,900)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">244,535 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,527)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">347,635 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,427)</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,878 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,492)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,864 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(135)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,627)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,425 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,465)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,626 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(124)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,589)</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="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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</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><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="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="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:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">192,403</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(5,857)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">255,965</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(13,905)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">448,368</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,762)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:79.341%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.459%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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></tr></table></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Management monitors debt securities that are in an unrealized loss position to determine whether a loss exists related to the credit quality of the issuer. When developing an estimate of expected credit losses, management considers all relevant information including historical experience, current conditions, and reasonable forecasts of expected future cash flows. Based on this evaluation, no allowance for credit losses on debt securities was recorded as of October 1, 2023 or December 31, 2022. There was no activity recorded in the allowance for credit losses during the three-month or nine-month periods ended October 1, 2023 or October 2, 2022.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 (in thousands):</span></div><div style="margin-top:9pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:36.602%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.632%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross realized gains</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">109</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">109</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross realized losses</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(733)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(79)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(733)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(236)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net realized gains (losses)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(624)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(79)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(624)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Realized gains and losses are included in "Investment income" on the Consolidated Statements of Operations. Prior to the sale of these securities, unrealized gains and losses for these debt securities, net of tax, were recorded in shareholders’ equity as accumulated other comprehensive income (loss).</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the effective maturity dates of the Company’s available-for-sale investments as of October 1, 2023 (in thousands):</span></div><div style="margin-top:5pt"><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.361%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.289%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&lt;1 year</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1-2 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2-3 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">3-4 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4-5 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5-8 Years</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:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110,627 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,497 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,409 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,878 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,539 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">455 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,405 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,457 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,306 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,016 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,842 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,121 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,722 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,584 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,978 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,683 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">961 </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:'Arial',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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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><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="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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">117,147</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">113,525</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">91,970</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">60,698</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">59,660</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">7,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">450,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Cash, cash equivalents, and investments consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><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:61.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.028%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.031%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">153,785</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">180,959 </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="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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market instruments</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">241,716</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">415 </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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash and cash equivalents</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">395,501</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">181,374 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">110,627</span><span style="color:#000000;font-family:'Arial',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 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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">164,055 </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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,084</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,890 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">2,457</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,332 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">979</span><span style="color:#000000;font-family:'Arial',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:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Agency bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,858 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">624 </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></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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current investments</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">117,147</span><span style="color:#000000;font-family:'Arial',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 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 #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">218,759 </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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">238,778</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">374,440 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">59,285</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44,214 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">33,967</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,539 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">961</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,924 </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="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="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="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 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current investments</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">332,991</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">454,117 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">845,639</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">854,250 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 153785000 180959000 241716000 415000 395501000 181374000 110627000 164055000 3084000 26890000 2457000 11332000 979000 0 0 15858000 0 624000 117147000 218759000 238778000 374440000 59285000 44214000 33967000 33539000 961000 1924000 332991000 454117000 845639000 854250000 4094000 3620000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s available-for-sale investments as of October 1, 2023 (in thousands):</span></div><div style="margin-top:6pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.707%"><tr><td style="width:1.0%"></td><td style="width:42.741%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.536%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.243%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.389%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.533%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.392%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amortized<br/>Cost</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Unrealized<br/>Gains</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Gross<br/>Unrealized<br/>Losses</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current:</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><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><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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">114,188 </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:'Arial',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:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,561)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110,627 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,128 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,498 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(41)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,457 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,017 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(38)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979 </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></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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-current:</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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">251,635 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(12,866)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">238,778 </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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,871 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,586)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59,285 </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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,512 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,545)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,967 </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></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,042 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(81)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">961 </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><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:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">469,891</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,762)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">450,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 114188000 0 3561000 110627000 3128000 0 44000 3084000 2498000 0 41000 2457000 1017000 0 38000 979000 251635000 9000 12866000 238778000 60871000 0 1586000 59285000 35512000 0 1545000 33967000 1042000 0 81000 961000 469891000 9000 19762000 450138000 The following table summarizes the Company’s gross unrealized losses and fair values for available-for-sale investments in an unrealized loss position as of October 1, 2023 (in thousands):<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:30.711%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.651%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.654%"></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:'Arial',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized Loss Position For:</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> </span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Less than 12 Months</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">12 Months or Greater</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</span></td><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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Fair Value</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Unrealized<br/>Losses</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">103,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 style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,900)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">244,535 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,527)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">347,635 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16,427)</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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,878 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,492)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,864 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(135)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,627)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,425 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,465)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,626 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(124)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,589)</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="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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(119)</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><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="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="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:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">192,403</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(5,857)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">255,965</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(13,905)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">448,368</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,762)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table> 103100000 2900000 244535000 13527000 347635000 16427000 56878000 1492000 4864000 135000 61742000 1627000 32425000 1465000 4626000 124000 37051000 1589000 0 0 1940000 119000 1940000 119000 192403000 5857000 255965000 13905000 448368000 19762000 0 0 0 0 0 0 <div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's gross realized gains and losses on the sale of debt securities for the three-month and nine-month periods ended October 1, 2023 and October 2, 2022 (in thousands):</span></div><div style="margin-top:9pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:36.602%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.632%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross realized gains</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">109</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">109</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">133 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross realized losses</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(733)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(79)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(733)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(236)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net realized gains (losses)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(624)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(79)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(624)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(103)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 109000 0 109000 133000 -733000 -79000 -733000 -236000 -624000 -79000 -624000 -103000 <div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the effective maturity dates of the Company’s available-for-sale investments as of October 1, 2023 (in thousands):</span></div><div style="margin-top:5pt"><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.361%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.695%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:9.289%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">&lt;1 year</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">1-2 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">2-3 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">3-4 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">4-5 Years</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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">5-8 Years</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:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate bonds</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">110,627 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">95,497 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,409 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,878 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,539 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">455 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">349,405 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Treasury bills</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,457 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,306 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,016 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,842 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,121 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,742 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Asset-backed 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,084 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,722 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,584 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,978 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,683 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,051 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Sovereign bonds</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">979 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">961 </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:'Arial',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:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,940 </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><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="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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">117,147</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">113,525</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">91,970</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">60,698</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">59,660</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">7,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">450,138</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 110627000 95497000 65409000 34878000 42539000 455000 349405000 2457000 5306000 15016000 21842000 17121000 0 61742000 3084000 12722000 10584000 3978000 0 6683000 37051000 979000 0 961000 0 0 0 1940000 117147000 113525000 91970000 60698000 59660000 7138000 450138000 Inventories<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><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:61.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.028%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.031%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">80,091</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71,720 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,712</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">906 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">52,063</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,854 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">133,866</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">122,480 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventories consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><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:61.911%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.028%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.031%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:9pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">80,091</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71,720 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,712</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">906 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">52,063</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,854 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">133,866</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">122,480 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 80091000 71720000 1712000 906000 52063000 49854000 133866000 122480000 Leases<div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's leases are primarily leased properties across different worldwide locations where the Company conducts its operations. All of these leases are classified as operating leases. Certain leases may contain options to extend or terminate the lease at the Company's sole discretion. </span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of October 1, 2023, there were no options to terminate and twenty-nine options to extend that were accounted for in the determination of the lease term for outstanding leases. Certain leases contain leasehold improvement incentives, retirement obligations, escalating clauses, rent holidays, and variable payments tied to a consumer price index. There were no restrictions or covenants for outstanding leases as of October 1, 2023.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total operating lease expense for the three-month and nine-month periods ended October 1, 2023 was $5,512,000 and $8,151,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 1, 2023 were $5,168,000 and $7,532,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 1, 2023 was $132,000 and $292,000, respectively.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total operating lease expense for the three-month and nine-month periods ended October 2, 2022 was $2,255,000 and $6,699,000, respectively. The total operating lease cash payments for the three-month and nine-month periods ended October 2, 2022 were $2,161,000 and $6,467,000, respectively. The total lease expense for leases with a term of twelve months or less for which the Company elected not to recognize a lease asset or lease liability for the three-month and nine-month periods ended October 2, 2022 was $35,000 and $110,000, respectively.</span></div><div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future operating lease cash payments are as follows (in thousands):</span></div><div style="margin-top:14pt;text-align:center"><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:82.648%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.728%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.224%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Year Ended 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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of fiscal 2023</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,510 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,580 </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:'Arial',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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,677 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,799 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,231 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,992 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,421 </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:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">92,210</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:4pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The discounted present value of the future lease cash payments resulted in a total lease liability of $68,432,000 and $39,752,000 as of October 1, 2023 and December 31, 2022, respectively. The Company did not have any leases that had not yet commenced but that created significant rights and obligations as of October 1, 2023.</span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In June 2023, the Company entered into a lease for a 115,000 square-foot building in Singapore to serve as a new distribution center for customers in Asia. The lease contains two components, including a 88,000 square-foot premises with a term of ten years, six months. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. This lease component commenced during the second quarter of 2023, and therefore the Company recorded approximately $29,639,000, which reflects an estimated extension period of five years, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date. The second component of this Singapore lease is for a 27,000 square-foot premises with a term of eight years. The commencement date for this lease component is in the fourth quarter of 2025, and therefore it was not yet recorded on the Consolidated Balance Sheets, nor did it create any significant rights and obligations as of October 1, 2023. The Company has the right and option to extend the term of this lease component for an additional period of five years, commencing upon the expiration of the original term. Future payment obligations associated with this lease component total $13,231,000, none of which is payable in 2023 and which reflects an estimated extension period of five years. Future payment obligations related to this lease component are not included in the future operating lease cash payments table above. </span></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2021, the Company entered into a lease for a 65,000 square-foot building in Southborough, Massachusetts for a term of ten years to serve as a new distribution center for customers in the Americas. The Company has the right and option to extend the term of this lease for an additional period of five years, commencing upon the expiration of the original ten-year term. This lease commenced during the first quarter of 2022, and therefore the Company recorded approximately $9,271,000, which does not reflect an estimated extension period, within "Operating lease assets" and "Operating lease liabilities" on the Consolidated Balance Sheets on the commencement date.</span></div>The weighted-average discount rate was 5.4% and 3.3% for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively. The weighted-average remaining lease term was 10.8 and 7.8 years for the leases outstanding as of October 1, 2023 and December 31, 2022, respectively. 5512000 8151000 5168000 7532000 132000 292000 2255000 6699000 2161000 6467000 35000 110000 <div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Future operating lease cash payments are as follows (in thousands):</span></div><div style="margin-top:14pt;text-align:center"><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:82.648%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:2.728%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.224%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Year Ended 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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of fiscal 2023</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,510 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,580 </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:'Arial',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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,677 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,799 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,231 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,992 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,421 </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:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">92,210</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 2510000 11580000 9677000 7799000 7231000 6992000 46421000 92210000 68432000 39752000 115000 2 88000 P10Y6M P5Y 29639000 29639000 P5Y 27000 P8Y P5Y 13231000 0 P5Y 65000 P10Y P5Y P10Y 9271000 9271000 0.054 0.033 P10Y9M18D P7Y9M18D Goodwill<div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying value of goodwill were as follows (in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:83.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.776%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">242,630 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,588)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">241,042</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:9pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the carrying value of goodwill were as follows (in thousands):</span></div><div style="margin-top:14pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:83.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.776%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">242,630 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">  Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,588)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">241,042</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 242630000 -1588000 241042000 Intangible Assets<div style="margin-top:5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized intangible assets consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:51.176%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.320%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Carrying<br/>Value</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><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 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Completed technologies</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">28,017</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,590)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,427</span><span style="color:#000000;font-family:'Arial',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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,838</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(4,400)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,438</span><span style="color:#000000;font-family:'Arial',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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">340</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(219)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">121</span><span style="color:#000000;font-family:'Arial',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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">34,195</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(24,209)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9,986</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Carrying<br/>Value</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><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 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Completed technologies</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,017 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(17,744)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,273 </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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,838 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,860)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,978 </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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">340 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,195 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,781)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,414 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of October 1, 2023, estimated future amortization expense related to intangible assets was as follows (in thousands):</span></div><div style="margin-top:5pt"><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:81.623%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.445%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Year Ended 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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of fiscal 2023</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">709 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,623 </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:'Arial',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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,300 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,995 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,273 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">543 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">543 </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:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9,986</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:5pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortized intangible assets consisted of the following (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.561%"><tr><td style="width:1.0%"></td><td style="width:51.176%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.318%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.534%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.320%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Carrying<br/>Value</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><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 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Completed technologies</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">28,017</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(19,590)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,427</span><span style="color:#000000;font-family:'Arial',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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,838</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(4,400)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,438</span><span style="color:#000000;font-family:'Arial',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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">340</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(219)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">121</span><span style="color:#000000;font-family:'Arial',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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">34,195</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(24,209)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9,986</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:9pt"><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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Accumulated<br/>Amortization</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Net<br/>Carrying<br/>Value</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><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 2px 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Completed technologies</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,017 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(17,744)</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,273 </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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,838 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,860)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,978 </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 7.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">340 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">34,195 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(21,781)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,414 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 28017000 19590000 8427000 5838000 4400000 1438000 340000 219000 121000 34195000 24209000 9986000 28017000 17744000 10273000 5838000 3860000 1978000 340000 177000 163000 34195000 21781000 12414000 <div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:115%">As of October 1, 2023, estimated future amortization expense related to intangible assets was as follows (in thousands):</span></div><div style="margin-top:5pt"><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:81.623%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.445%"></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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%;text-decoration:underline">Year Ended 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:'Arial',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Amount</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of fiscal 2023</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">709 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2024</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,623 </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:'Arial',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 colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,300 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,995 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,273 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">543 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Thereafter</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">543 </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:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">9,986</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 709000 2623000 2300000 1995000 1273000 543000 543000 9986000 Warranty Obligations<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records the estimated cost of fulfilling product warranties at the time of sale based upon historical costs to fulfill claims. Obligations may also be recorded subsequent to the time of sale whenever specific events or changes in circumstances impacting product quality become known that would not have been taken into account using historical data. While we engage in extensive product quality programs and processes, including actively monitoring and evaluating the quality of our component suppliers and third-party contract manufacturers, the Company’s warranty obligation is affected by product failure rates, material usage, and service delivery costs incurred in correcting a product failure. An adverse change in any of these factors may result in the need for additional warranty provisions. Warranty obligations are included in “Accrued expenses” on the Consolidated Balance Sheets.</span></div><div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the warranty obligation were as follows (in thousands):</span></div><div style="margin-top:5pt"><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:80.771%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.029%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,375 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for warranties issued during the period</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,722 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fulfillment of warranty obligations</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,292)</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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,805</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in the warranty obligation were as follows (in thousands):</span></div><div style="margin-top:5pt"><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:80.771%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.029%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,375 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Provisions for warranties issued during the period</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,722 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fulfillment of warranty obligations</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,292)</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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,805</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 4375000 1722000 2292000 3805000 Commitments and Contingencies<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of October 1, 2023, the Company had outstanding purchase orders totaling $70,635,000 to procure inventory from various vendors. Certain of these purchase orders may be canceled by the Company, subject to cancellation penalties. These purchase commitments relate primarily to expected sales in the next twelve months. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A significant portion of the Company's outstanding inventory purchase orders as of October 1, 2023, as well as additional preauthorized commitments to procure strategic components based on the Company's expected customer demand, are placed with the Company's primary contract manufacturer for the Company's assembled products. The Company has the obligation to purchase any non-cancelable and non-returnable components that have been purchased by the contract manufacturer with the Company's preauthorization, when these components have not been consumed within the period defined in the terms of the Company's agreement with this contract manufacturer. While the Company typically expects such purchased components to be used in future production of Cognex finished goods, these components are considered in the Company's reserve estimate for excess and obsolete inventory. Furthermore, the Company accrues for losses on commitments for the future purchase of non-cancelable and non-returnable components from this contract manufacturer at the time that circumstances, such as changes in demand, indicate that the value of the components may not be recoverable, the loss is probable, and management has the ability to reasonably estimate the amount of the loss.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Various claims and legal proceedings generally incidental to the normal course of business are pending or threatened on behalf of or against the Company. While we cannot predict the outcome of these matters, we believe that any liability arising from them will not have a material adverse effect on our financial position, liquidity, or results of operations.</span></div> 70635000 Derivative Instruments<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s foreign currency risk management strategy is principally designed to mitigate the potential financial impact of changes in the value of transactions and balances denominated in foreign currencies resulting from changes in foreign currency exchange rates. The Company enters into economic hedges utilizing foreign currency forward contracts with maturities that do not exceed approximately three months to manage the exposure to fluctuations in foreign currency exchange rates arising primarily from foreign-denominated receivables and payables. The gains and losses on these derivatives are intended to be offset by the changes in the fair value of the assets and liabilities being hedged. These economic hedges are not designated as hedging instruments for hedge accounting treatment.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, during the three-month period ended October 1, 2023, the Company entered into a foreign currency forward contract to exchange U.S. Dollars for ¥40,000,000,000 to hedge the Japanese Yen purchase price of the acquisition of Moritex Corporation (refer to Note 19 of the consolidated financial statements). Upon the settlement of this contract, the Company recorded a foreign currency loss of $8,456,000, which was recorded in "Foreign currency gain (loss)" on the Consolidated Statements of Operations for the three-month period ended October 1, 2023.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had the following outstanding forward contracts (in thousands):</span></div><div style="margin-top:5pt"><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:46.122%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.034%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.746%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Currency</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Notional<br/>Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">USD<br/>Equivalent</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">USD<br/>Equivalent</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></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><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Japanese Yen</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,600,000</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">272,499</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">700,000 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,281 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Euro</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">37,500</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39,741</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,174 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Singapore Dollar</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,500</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">29,747</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chinese Renminbi</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">200,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,445</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,619 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mexican Peso</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">100,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,722</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,480 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hungarian Forint</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,930,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,221</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,238 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">British Pound</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,230</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,956</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,445 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161 </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><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="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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canadian Dollar</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,650</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,225</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,730 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,278 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Swiss Franc</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,218 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:1pt;text-align:justify"><span><br/></span></div><div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.368%"><tr><td style="width:1.0%"></td><td style="width:12.863%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.368%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.113%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.563%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.113%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.570%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset Derivatives</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liability Derivatives</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair Value</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair Value</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Sheet<br/>Location</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Sheet<br/>Location</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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><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="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="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></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><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><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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):</span></div><div style="margin-top:5pt"><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:21.008%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.345%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.223%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.008%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.345%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.227%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset Derivatives</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liability Derivatives</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts of recognized assets</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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 colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts of recognized liabilities</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts offset</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',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="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts offset</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount of assets presented</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount of liabilities presented</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):</span></div><div style="margin-top:5pt"><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:14.835%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:24.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.797%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Location in Financial Statements</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></div></td></tr><tr style="height:24pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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="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="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="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="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="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="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="21" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains (losses) recognized in current operations</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency gain (loss)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(7,527)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,161 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(8,139)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,091 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> P3M 40000000000 8456000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company had the following outstanding forward contracts (in thousands):</span></div><div style="margin-top:5pt"><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:46.122%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.034%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.204%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.746%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Currency</span></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Notional<br/>Value</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-bottom:1pt solid #000000;border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">USD<br/>Equivalent</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Notional<br/>Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">USD<br/>Equivalent</span></td></tr><tr><td colspan="12" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></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><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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Japanese Yen</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,600,000</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">272,499</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">700,000 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,281 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Euro</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">37,500</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39,741</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,174 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Singapore Dollar</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,500</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">29,747</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',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;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Chinese Renminbi</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">200,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,445</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,619 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Mexican Peso</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">100,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,722</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">185,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,480 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Hungarian Forint</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,930,000</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,221</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590,000 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,238 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">British Pound</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,230</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,956</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,445 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,161 </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><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="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:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canadian Dollar</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,650</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,225</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,730 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,278 </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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Swiss Franc</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,218 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 40600000000 272499000 700000000 5281000 37500000 39741000 60000000 64174000 40500000 29747000 0 0 200000000 27445000 55000000 7619000 100000000 5722000 185000000 9480000 1930000000 5221000 1590000000 4238000 3230000 3956000 3445000 4161000 1650000 1225000 1730000 1278000 0 0 1120000 1218000 <div style="margin-top:1pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding the fair value of the outstanding forward contracts was as follows (in thousands):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:97.368%"><tr><td style="width:1.0%"></td><td style="width:12.863%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:17.368%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.113%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.563%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.960%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.113%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.550%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.570%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset Derivatives</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="border-bottom:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liability Derivatives</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair Value</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="9" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Fair Value</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Sheet<br/>Location</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Sheet<br/>Location</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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><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="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="18" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></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><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><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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Economic hedge forward contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Prepaid expenses and other current assets</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Accrued expenses</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',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 style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 196000 27000 128000 479000 <div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the gross activity for all derivative assets and liabilities which were presented on a net basis on the Consolidated Balance Sheets due to the right of offset with each counterparty (in thousands):</span></div><div style="margin-top:5pt"><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:21.008%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.345%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.824%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.223%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:21.008%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.345%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.227%"></td><td style="width:0.1%"></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Asset Derivatives</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="15" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liability Derivatives</span></td></tr><tr><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">December 31, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts of recognized assets</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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 colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts of recognized liabilities</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts offset</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',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="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gross amounts offset</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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:'Arial',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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount of assets presented</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">196</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net amount of liabilities presented</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">128</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">479 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 196000 27000 128000 479000 0 0 0 0 196000 27000 128000 479000 <div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Information regarding the effect of derivative instruments on the consolidated financial statements was as follows (in thousands):</span></div><div style="margin-top:5pt"><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:14.835%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:24.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.797%"></td><td style="width:0.1%"></td></tr><tr style="height:14pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" rowspan="2" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Location in Financial Statements</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></div></td></tr><tr style="height:24pt"><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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="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="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="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="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="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="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="21" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:100%">Derivatives Not Designated as Hedging Instruments:</span></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Gains (losses) recognized in current operations</span></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency gain (loss)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(7,527)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,161 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(8,139)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,091 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> -7527000 7161000 -8139000 15091000 Revenue Recognition<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):</span></div><div style="margin-top:11pt"><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:37.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.527%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Americas</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">80,156</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,847 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">243,067</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">284,057 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Europe</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51,827</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,930 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">168,529</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,561 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Greater China</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">34,485</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,460 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">139,837</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193,481 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other Asia</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">30,773</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,385 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">89,444</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,558 </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:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">197,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,622 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">640,877</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">766,657 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div><span><br/></span></div><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes disaggregated revenue information by revenue type (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:36.602%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.632%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard products and services</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">170,104</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,244 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">555,831</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637,598 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Application-specific customer solutions</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,137</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,378 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">85,046</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,059 </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:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">197,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,622 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">640,877</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">766,657 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Costs to Fulfill a Contract</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Costs to fulfill a contract are included in "Prepaid expenses and other current assets" on the Consolidated Balance Sheet and amounted to $17,827,000 and $14,578,000 as of October 1, 2023 and December 31, 2022, respectively.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Accounts Receivable, Contract Assets, and Contract Liabilities</span></div><div style="margin-top:3pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Accounts receivable represent amounts billed and currently due from customers which are reported at their net estimated realizable value. The Company maintains an allowance against its accounts receivable for credit losses. Contract assets consist of unbilled revenue which arises when revenue is recognized in advance of billing for certain application-specific customer solutions contracts. Contract liabilities consist of deferred revenue and customer deposits which arise when amounts are billed to or collected from customers in advance of revenue recognition.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the allowance for credit losses activity for the nine-month period ended October 1, 2023 (in thousands):</span></div><div style="margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:79.341%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.459%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">730 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increases to the allowance for credit losses</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">350 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-offs, net of recoveries</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(500)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">580</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended October 1, 2023 (in thousands):</span></div><div style="margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:79.341%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.459%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,787 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferral of revenue billed in the current period, net of recognition</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,249 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognition of revenue deferred in prior period</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,809)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Returned customer deposit</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,205)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(776)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,246</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As a practical expedient, the Company has elected not to disclose the aggregate amount of the transaction price allocated to unsatisfied performance obligations, as our contracts have an original expected duration of less than one year.</span></div> <div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes disaggregated revenue information by geographic area based upon the customer's country of domicile (in thousands):</span></div><div style="margin-top:11pt"><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:37.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.527%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Americas</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">80,156</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65,847 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">243,067</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">284,057 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Europe</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51,827</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">48,930 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">168,529</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,561 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Greater China</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">34,485</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66,460 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">139,837</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">193,481 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other Asia</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">30,773</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,385 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">89,444</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,558 </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:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">197,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,622 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">640,877</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">766,657 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 80156000 65847000 243067000 284057000 51827000 48930000 168529000 173561000 34485000 66460000 139837000 193481000 30773000 28385000 89444000 115558000 197241000 209622000 640877000 766657000 <div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes disaggregated revenue information by revenue type (in thousands):</span></div><div style="margin-top:5pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.269%"><tr><td style="width:1.0%"></td><td style="width:36.602%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.389%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.536%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.627%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.830%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.632%"></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="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Standard products and services</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">170,104</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,244 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">555,831</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">637,598 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Application-specific customer solutions</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,137</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,378 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">85,046</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,059 </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:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">197,241</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">209,622 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">640,877</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">766,657 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 170104000 158244000 555831000 637598000 27137000 51378000 85046000 129059000 197241000 209622000 640877000 766657000 17827000 14578000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the allowance for credit losses activity for the nine-month period ended October 1, 2023 (in thousands):</span></div><div style="margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:79.341%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.459%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">730 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increases to the allowance for credit losses</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">350 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-offs, net of recoveries</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(500)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',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;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">580</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 730000 350000 500000 0 580000 <div style="margin-top:3pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the deferred revenue and customer deposits activity for the nine-month period ended October 1, 2023 (in thousands):</span></div><div style="margin-top:8pt;text-align:center"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.415%"><tr><td style="width:1.0%"></td><td style="width:79.341%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:18.459%"></td><td style="width:0.1%"></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,787 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deferral of revenue billed in the current period, net of recognition</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28,249 </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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognition of revenue deferred in prior period</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(18,809)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Returned customer deposit</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(9,205)</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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(776)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">40,246</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 40787000 28249000 18809000 9205000 -776000 40246000 Stock-Based Compensation Expense<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Stock Plans</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s stock-based awards that result in compensation expense consist of stock options, restricted stock units ("RSUs"), and performance restricted stock units ("PRSUs"). In May 2023, the shareholders of the Company approved the Cognex Corporation 2023 Stock Option and Incentive Plan (the “2023 Plan”). The 2023 Plan permits awards of stock options (both incentive and non-qualified options), stock appreciation rights, RSUs, and PRSUs. Up to 8,100,000 shares of common stock (subject to adjustment in the event of stock splits and other similar events) may be issued pursuant to awards granted under the 2023 Plan. In connection with the approval of the 2023 Plan, no further awards will be made under the Cognex Corporation 2001 General Stock Option Plan, as amended and restated (the “2001 Plan”), and the Cognex Corporation 2007 Stock Option and Incentive Plan, as amended and restated (the “2007 Plan”). With the approval of the 2023 Plan, the 10,610,800 shares of common stock subject to awards granted under the 2001 Plan and the 2007 Plan that were outstanding as of May 3, 2023 may become eligible for issuance under the 2023 Plan if such awards are forfeited, cancelled or otherwise terminated (other than by exercise) (the “Carryover Shares”). As of October 1, 2023, forfeits, cancellations, and other terminations from the 2001 Plan and the 2007 Plan have resulted in 214,024 Carryover Shares, raising the authorized total shares that may be issued under the 2023 Plan to 8,314,024</span><span style="color:#000000;font-family:'Calibri',sans-serif;font-size:12pt;font-weight:400;line-height:120%">.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of October 1, 2023, the Company had 8,035,000 shares available for grant under its stock plans. Stock options are granted with an exercise price equal to the market value of the Company’s common stock at the grant date and generally vest over <span style="-sec-ix-hidden:f-845">four</span> or five years based upon continuous service and expire ten years from the grant date. RSUs generally vest upon <span style="-sec-ix-hidden:f-848">three</span> or four years of continuous employment or incrementally over such <span style="-sec-ix-hidden:f-850">three</span> or four-year periods. PRSUs generally vest upon three years of continuous employment and achievement of performance criteria established by the Compensation Committee of our Board of Directors on or prior to the grant date. Participants are not entitled to dividends on stock options, RSUs, or PRSUs.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Stock Options</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s stock option activity for the nine-month period ended October 1, 2023:</span></div><div style="margin-top:5pt"><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.699%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.223%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.126%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.983%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-<br/>Average<br/>Exercise<br/>Price</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-<br/>Average<br/>Remaining<br/>Contractual<br/>Term (in years)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Aggregate<br/>Intrinsic<br/>Value<br/>(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,467 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51.56 </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 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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,395 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47.49 </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="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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercised</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(325)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.87 </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="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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(562)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57.71 </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="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:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of October 1, 2023</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,975</span><span style="color:#000000;font-family:'Arial',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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51.19</span><span style="color:#000000;font-family:'Arial',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="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">6.13</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,396</span><span style="color:#000000;font-family:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercisable as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,182</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">47.67</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.67</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,378</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Options vested or expected to vest as of October 1, 2023 (1)</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,493</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51.01</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5.98</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,396</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:1pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future. Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:</span></div><div style="margin-top:5pt"><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:38.227%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.526%"></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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Risk-free rate</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.1</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">%</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.7 </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:'Arial',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;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.0</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">%</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.1 </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:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected dividend yield</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">0.57</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.54 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">0.59</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.44 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected volatility</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected term (in years)</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5.9</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.4</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.9</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.5</span></td></tr></table></div><div style="margin-top:9pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Risk-free rate</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The risk-free rate was based upon a treasury instrument whose term was consistent with the contractual term of the option.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Expected dividend yield</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Generally, the current dividend yield is calculated by annualizing the cash dividend declared by the Company’s Board of Directors and dividing that result by the closing stock price on the grant date. </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Expected volatility</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The expected volatility was based upon a combination of historical volatility of the Company’s common stock over the contractual term of the option and implied volatility for traded options of the Company’s stock.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Expected term</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The expected term was derived from the binomial lattice model from the impact of events that trigger exercises over time.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The weighted-average grant-date fair values of stock options granted during the three-month and nine-month periods ended October 1, 2023 were $20.55 and $18.11, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $18.81 and $21.40, respectively.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total intrinsic values of stock options exercised for the three-month and nine-month periods ended October 1, 2023 were $557,000 and $6,119,000, respectively, and for the three-month and nine-month periods ended </span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">October 2, 2022 were $516,000 and $3,615,000, respectively. The total fair values of stock options vested for the three-month and nine-month periods ended October 1, 2023 were $962,000 and $33,035,000, respectively, and for the three-month and nine-month periods ended October 2, 2022 were $1,159,000 and $27,882,000, respectively.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Restricted Stock Units (RSUs)</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's RSUs activity for the nine-month period ended October 1, 2023: </span></div><div style="margin-top:5pt;text-align:center"><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.420%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.838%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average <br/>Grant Date Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61.74 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">748 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46.78 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(500)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.43 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(86)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60.65 </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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,431</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">54.79</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of RSUs is determined based on the observable market price of the Company's stock on the grant date less the present value of expected future dividends. The weighted-average grant-date fair values of RSUs granted during the three-month and nine-month periods ended October 1, 2023 were $46.17 and $46.78, respectively, and during the three-month and nine-month periods ended October 2, 2022 were $47.12 and $58.44, respectively. There were 18,000 and 500,000 RSUs that vested during the three-month and nine-month periods ended October 1, 2023, respectively, and 67,000 and 141,000 that vested during the three-month and nine-month periods ended October 2, 2022, respectively.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Performance Restricted Stock Units (PRSUs)</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's PRSUs activity for the nine-month period ended October 1, 2023: </span></div><div style="margin-top:6pt;text-align:justify"><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.420%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.838%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average <br/>Grant Date Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.49 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44.86 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</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:'Arial',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:'Arial',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="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',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:'Arial',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;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">79</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">52.23</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of PRSUs is calculated using the Monte Carlo simulation model to estimate the probability of satisfying the service and market conditions stipulated in the award grant. There were no PRSUs granted during the three-month periods ended October 1, 2023 and October 2, 2022. There were 46,000 and 33,000 PRSUs granted during the nine-month periods ended October 1, 2023 and October 2, 2022, respectively. No PRSUs vested during the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%;text-decoration:underline">Stock-Based Compensation Expense</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company stratifies its employee population into three groups: one consisting of the CEO, one consisting of senior management, and another consisting of all other employees. The Company currently applies an estimated annual forfeiture rate of 0% to all stock-based awards for the CEO, 8% to all stock-based awards for senior management, and a rate of 13% for all other employees. Each year during the first quarter, the Company revises its forfeiture rate based on updated estimates of employee turnover. This resulted in a decrease to compensation expense of $234,000 in 2023 and an increase to compensation expense of $1,536,000 in 2022.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of October 1, 2023, total unrecognized compensation expense, net of estimated forfeitures, related to non-vested equity awards, including stock options, RSUs, and PRSUs, was $68,509,000, which is expected to be recognized over a weighted-average period of 2.0 years.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 1, 2023 were $12,365,000 and $1,971,000, respectively, and for the nine-month period ended October 1, 2023 were $41,518,000 and $6,053,000, respectively. The total stock-based compensation expense and the related income tax benefit recognized for the three-month period ended October 2, 2022 were $13,366,000 and $2,133,000, respectively, and for the nine-month period ended October 2, 2022 were $41,419,000 and $6,496,000, respectively. No compensation expense was capitalized as of October 1, 2023 or December 31, 2022.</span></div><div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):</span></div><div style="margin-top:5pt"><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:38.812%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.941%"></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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of 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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">435</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">468 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,497</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,513 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research, development, and engineering</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,459</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,209 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,657</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,508 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,471</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,689 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,364</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,398 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,365</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,366 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">41,518</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,419 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 8100000 10610800 214024 8314024 8035000 P5Y P10Y P4Y P4Y P3Y <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s stock option activity for the nine-month period ended October 1, 2023:</span></div><div style="margin-top:5pt"><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.699%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.273%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.223%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.126%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.983%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-<br/>Average<br/>Exercise<br/>Price</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-<br/>Average<br/>Remaining<br/>Contractual<br/>Term (in years)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Aggregate<br/>Intrinsic<br/>Value<br/>(in thousands)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,467 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51.56 </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 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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,395 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47.49 </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="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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercised</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(325)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33.87 </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="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 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(562)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">57.71 </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="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:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of October 1, 2023</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,975</span><span style="color:#000000;font-family:'Arial',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;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51.19</span><span style="color:#000000;font-family:'Arial',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="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">6.13</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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,396</span><span style="color:#000000;font-family:'Arial',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="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Exercisable as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5,182</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">47.67</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.67</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,378</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-top:3pt double #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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Options vested or expected to vest as of October 1, 2023 (1)</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,493</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #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-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">51.01</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #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 colspan="3" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5.98</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">17,396</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="margin-top:1pt;padding-left:36pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> (1) In addition to the vested options, the Company expects a portion of the unvested options to vest at some point in the future. Options expected to vest are calculated by applying an estimated forfeiture rate to the unvested options.</span></div> 8467000 51.56 1395000 47.49 325000 33.87 562000 57.71 8975000 51.19 P6Y1M17D 17396000 5182000 47.67 P4Y8M1D 17378000 8493000 51.01 P5Y11M23D 17396000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair values of stock options granted in each period presented were estimated using the following weighted-average assumptions:</span></div><div style="margin-top:5pt"><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:38.227%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.526%"></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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Risk-free rate</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.1</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">%</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.7 </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:'Arial',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;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.0</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">%</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2.1 </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:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected dividend yield</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">0.57</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.54 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">0.59</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">0.44 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected volatility</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">39</span><span style="color:#000000;font-family:'Arial',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"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:top"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected term (in years)</span></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">5.9</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6.4</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">4.9</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5.5</span></td></tr></table></div> 0.041 0.027 0.040 0.021 0.0057 0.0054 0.0059 0.0044 0.39 0.37 0.39 0.37 P5Y10M24D P6Y4M24D P4Y10M24D P5Y6M 20.55 18.11 18.81 21.40 557000 6119000 516000 3615000 962000 33035000 1159000 27882000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's RSUs activity for the nine-month period ended October 1, 2023: </span></div><div style="margin-top:5pt;text-align:center"><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.420%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.838%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average <br/>Grant Date Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,269 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61.74 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">748 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46.78 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(500)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">59.43 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(86)</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">60.65 </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><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,431</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">54.79</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1269000 61.74 748000 46.78 500000 59.43 86000 60.65 1431000 54.79 46.17 46.78 47.12 58.44 18000 500000 67000 141000 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company's PRSUs activity for the nine-month period ended October 1, 2023: </span></div><div style="margin-top:6pt;text-align:justify"><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.420%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:15.712%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.838%"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Shares<br/>(in thousands)</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Weighted-Average <br/>Grant Date Fair Value</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of December 31, 2022</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.49 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">44.86 </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 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</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:'Arial',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:'Arial',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="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Forfeited or expired</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:'Arial',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:'Arial',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;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Nonvested as of October 1, 2023</span></div></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">79</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">52.23</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 33000 62.49 46000 44.86 0 0 0 0 79000 52.23 0 0 46000 33000 0 0 0 0 3 0 0.08 0.13 234000 1536000 68509000 P2Y 12365000 1971000 41518000 6053000 13366000 2133000 41419000 6496000 0 0 <div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the stock-based compensation expense by caption for each period presented on the Consolidated Statements of Operations (in thousands):</span></div><div style="margin-top:5pt"><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:38.812%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.519%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.941%"></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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cost of 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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">435</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">468 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,497</span><span style="color:#000000;font-family:'Arial',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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,513 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Research, development, and engineering</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">3,459</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,209 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,657</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,508 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">8,471</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,689 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">27,364</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,398 </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:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">12,365</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,366 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">41,518</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;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-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,419 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 435000 468000 1497000 1513000 3459000 4209000 12657000 12508000 8471000 8689000 27364000 27398000 12365000 13366000 41518000 41419000 Stock Repurchase ProgramOn March 12, 2020, the Company's Board of Directors authorized the repurchase of $200,000,000 of the Company's common stock. Under this March 2020 program, in addition to repurchases made in prior years, the Company repurchased 1,677,000 shares, and an additional 5,000 shares that were repurchased in 2021 and settled in 2022, at a cost of $117,000,000 during the nine-month period ended October 2, 2022, which completed purchases under this program. On March 3, 2022, the Company's Board of Directors authorized the repurchase of an additional $500,000,000 of the Company's common stock. Under this March 2022 program, the Company repurchased 1,125,000 shares at a total cost of $61,387,000 during the nine-month period ended October 2, 2022. Under this same March 2022 program, in addition to repurchases made in the prior year, the Company repurchased 1,157,000 shares at a total cost of $59,640,000 during the nine-month period ended October 1, 2023, leaving a remaining balance of $353,046,000 as of October 1, 2023. The Company may repurchase shares under this program in future periods depending on a variety of factors, including, among other things, the impact of dilution from employee stock awards, stock price, share availability, and cash requirements. The Company is authorized to make repurchases of its common stock through open market purchases, pursuant to Rule 10b5-1 trading plans, or in privately negotiated transactions. 200000000 1677000 5000 117000000 500000000 1125000 61387000 1157000 59640000 353046000 Income Taxes<div style="margin-top:6pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company's effective tax rate was 30% and 16% for the three-month and nine-month periods ended October 1, 2023, respectively, and 14% and 16% for the three-month and nine-month periods ended October 2, 2022, respectively. </span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has defined its major tax jurisdictions as the United States, Ireland, China, and Korea, and within the United States, Massachusetts. The statutory tax rate is 12.5% in Ireland, 25% in China, and 22% in Korea compared to the U.S. federal statutory corporate tax rate of 21%. These foreign tax rate differences resulted in a net decrease to the effective tax rate for both the three-month and nine-month periods ended October 1, 2023 and October 2, 2022.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded a net discrete tax expense totaling $4,035,000 and $840,000 for the three-month and nine-month periods ended October 1, 2023, respectively and a net discrete tax benefit totaling $2,000 and a net discrete tax expense totaling $3,984,000 for the same periods in 2022.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Discrete tax items for the nine-month period ended October 1, 2023 included (1) a net decrease in tax expense of $3,043,000 due primarily to the release of tax reserves on state tax credits and foreign audit settlements; (2) a decrease in tax expense of $2,198,000 for adjustments to certain deferred tax assets; (3) an increase in tax expense of $2,178,000 for an adjustment related to deferred state taxes due to a reduction in the Company's blended state rate; (4) a net increase in tax expense of $2,134,000 for return-to-provision adjustments; and (5) an increase in tax expense of $1,769,000 related to stock-based compensation.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Discrete tax items for the nine-month period ended October 2, 2022 included (1) a net increase in tax expense of $3,822,000 primarily for return-to-provision adjustments; (2) a net decrease in tax expense of $2,461,000 arising primarily from audit settlements and releases of reserves; (3) an increase in tax expense of $2,316,000 to establish a reserve against certain deferred tax assets; and (4) an increase in tax expense of $307,000 related to stock-based compensation;</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s reserve for income taxes, including gross interest and penalties, was $19,450,000 as of October 1, 2023, which was classified as a non-current liability. If the Company’s tax positions were sustained or the statutes of limitations related to certain positions expired, these reserves would be released and income tax expense would be reduced in a future period.</span></div>Within the United States, the tax years 2019 through 2022 remain open to examination by the IRS, and 2018 through 2022 remain open to examination by various state tax authorities. The tax years 2017 through 2022 remain open to examination by various international taxing authorities in other jurisdictions in which the Company operates. 0.30 0.16 0.14 0.16 0.125 0.25 0.22 0.21 4035000 -840000 -2000 3984000 3043000 2198000 2178000 2134000 1769000 3822000 2461000 2316000 307000 19450000 2019 through 2022 2017 through 2022 Weighted-Average Shares<div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weighted-average shares were calculated as follows (in thousands):</span></div><div style="margin-top:5pt"><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:42.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></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:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted-average common shares outstanding</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">172,169</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,256 </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 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">172,408</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,640 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive equity awards</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,185</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,251</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,593 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average common and common-equivalent shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">173,354</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174,327 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">173,659</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175,233 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;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></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></tr></table></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Stock options to purchase 6,893,000 and 6,775,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 6,167,000 and 3,297,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. Restricted stock units totaling 3,000 and 1,000 shares of common stock, on a weighted-average basis, were outstanding during the three-month and nine-month periods ended October 1, 2023, respectively, and 607,000 and 26,000 for the same periods in 2022, respectively, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the three-month and nine-month periods ended October 1, 2023, as PRSUs were not anti-dilutive on a weighted-average basis. PRSUs totaling 33,000 shares of common stock, on a weighted average basis, were outstanding during the three-month period ended October 2, </span></div>2022, but were not included in the calculation of dilutive net income per share because they were anti-dilutive. No PRSUs were excluded in the calculation of dilutive net income per share for the nine-month period ended October 2, 2022 as PRSUs were not anti-dilutive on a weighted-average basis. <div style="margin-top:6pt"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Weighted-average shares were calculated as follows (in thousands):</span></div><div style="margin-top:5pt"><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:42.028%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.350%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></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:'Arial',sans-serif;font-size:8pt;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Three-months Ended</span></td><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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Nine-months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">October 1, 2023</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">October 2, 2022</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic weighted-average common shares outstanding</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">172,169</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,256 </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 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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">172,408</span><span style="color:#000000;font-family:'Arial',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 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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,640 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive equity awards</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,185</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,071 </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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,251</span><span style="color:#000000;font-family:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,593 </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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted-average common and common-equivalent shares outstanding</span></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">173,354</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174,327 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">173,659</span><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%"> </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;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 colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">175,233 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;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></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></tr></table></div> 172169000 173256000 172408000 173640000 1185000 1071000 1251000 1593000 173354000 174327000 173659000 175233000 6893000 6775000 6167000 3297000 3000 1000 607000 26000 0 0 33000 0 Loss (Recovery) from Fire<div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On June 7, 2022, the Company’s primary contract manufacturer experienced a fire at its plant in Indonesia. The fire destroyed a significant amount of Cognex-owned consigned inventories, as well as component inventories owned by the contract manufacturer that were designated for Cognex products. There was no significant damage to the Company's production equipment. Since the date of the fire, the Company has worked with the contract manufacturer to resume production, maintain standards of product quality, and replenish inventories destroyed by the fire. The Company has also been working to ramp up an additional contract manufacturer to further mitigate risk, diversify the supply chain, and expand production capacity.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine-month period ended October 2, 2022, the Company recorded a net loss related to the fire of $20,294,000, consisting primarily of losses from inventories and other assets of $47,794,000, including $2,891,000 during the three-month period ended October 2, 2022, partially offset by an estimated insurance recovery of $27,500,000. These losses are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations. The Company received insurance proceeds of $27,560,000 from the Company's insurance carrier in the fourth quarter of 2022, and gross losses recorded during 2022 related to the fire were further reduced by the proceeds received in excess of the original estimated insurance recovery.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the nine-month period ended October 1, 2023, the Company recorded recoveries related to the fire of $5,250,000, consisting of $2,500,000 during the three-month period ended July 2, 2023 for proceeds received from the Company's insurance carrier in relation to a business interruption claim and $2,750,000 during the three-month period ended October 1, 2023 for proceeds received as part of a financial settlement for lost inventory and other losses incurred as a result of the fire. The Company expects to receive an additional $2,750,000 by the end of 2023. These recovery amounts are presented in the caption “Loss (recovery) from fire” on the Consolidated Statements of Operations.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of October 1, 2023 and through the date of financial statement issuance, management does not anticipate additional recoveries other than disclosed.</span></div> 20294000 47794000 2891000 27500000 27560000 5250000 2500000 2750000 2750000 Restructuring Charges<div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On December 7, 2022, the Company acquired all of the outstanding shares of SAC Sirius Advanced Cybernetics GmbH ("SAC"), a leader in computational lighting technology based in Germany. Following its acquisition of SAC, the Company performed restructuring activities to align the cost and operating structure of the acquired business with the Company's business strategy. As of December 31, 2022, the majority of these restructuring actions were completed. No additional charges were recorded during the three-month and nine-month periods ended October 1, 2023, or are expected to be incurred in future periods in relation to this restructuring plan.</span></div><div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the activity in the Company’s restructuring reserve related to these restructuring activities, which is included in “Accrued expenses” on the Consolidated Balance Sheets (in thousands):</span></div><div style="text-align:justify"><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:52.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.104%"></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:13.081%"></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 colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">One-time Termination Benefits</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Contract Termination Costs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">964 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75 </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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,039</span><span style="color:#000000;font-family:'Arial',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="display:none"></td><td colspan="3" style="display:none"></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash payments</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(973)</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:'Arial',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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(1,029)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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></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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9 </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:'Arial',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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">10</span><span style="color:#000000;font-family:'Arial',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="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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">20</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">20</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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></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></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></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></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></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></tr></table></div> <div style="margin-top:5pt;text-align:justify"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the activity in the Company’s restructuring reserve related to these restructuring activities, which is included in “Accrued expenses” on the Consolidated Balance Sheets (in thousands):</span></div><div style="text-align:justify"><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:52.701%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.104%"></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:13.081%"></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 colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:14.546%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">One-time Termination Benefits</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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Contract Termination Costs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Total</span></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:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">964 </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:'Arial',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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75 </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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">1,039</span><span style="color:#000000;font-family:'Arial',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="display:none"></td><td colspan="3" style="display:none"></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></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Cash payments</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(973)</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:'Arial',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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">(1,029)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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></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></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign exchange rate changes</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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9 </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:'Arial',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="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">10</span><span style="color:#000000;font-family:'Arial',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="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:'Arial',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of October 1, 2023</span></div></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">—</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">20</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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:'Arial',sans-serif;font-size:10pt;font-weight:700;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:'Arial',sans-serif;font-size:10pt;font-weight:700;line-height:100%">20</span><span style="color:#000000;font-family:'Arial',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 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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></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></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></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></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></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></tr></table></div> 964000 75000 1039000 973000 56000 1029000 9000 1000 10000 0 20000 20000 Subsequent EventsOn October 18, 2023, the Company acquired all of the outstanding shares of Moritex Corporation, a leading global provider of optics components with a strong presence in Japan, for an enterprise value of ¥40 billion, or approximately $270 million based on closing-date foreign exchange rates, in an all-cash transaction. Given the timing of this acquisition, the Company is in the process of completing the purchase price allocation for the consideration paid. Transaction costs incurred to date were not material and were expensed as incurred. The financial results of Moritex Corporation prior to the acquisition date are not material to the consolidated financial results of the Company.On October 31, 2023, the Company’s Board of Directors declared a cash dividend of $0.075 per share. The dividend is payable on December 1, 2023 to all shareholders of record as of the close of business on November 17, 2023. 2023-10-18 40000000000 270000000 0.075 false false EXCEL 92 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( -@S7U<'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #8,U]7_V=Z;NT K @ $0 &1O8U!R;W!S+V-O&ULS9+! M:L0@$(9?I7A/1A/H0;)>6GKJPD(76GH3G=V51B,Z)=FW;V)WLY3V 0I>G/G] MYANP,U&:(>$N#1$3.?WX)&TU:1A 59Q)3+562--0DU#NN"M6?'Q,_4%9@U@CQX#91"U *:6 MB?$\]1W< N,,/G\74"[$DOU3VSI +LDI^S6U#B.]=B6W+R#@+?M\TM9MW(A MDPX&YU?923I'W+#KY-?VX7'_Q%3#F[82O&K%7G#9+N=]97)PC$ 8 )PG 3 >&PO=&AE M;64O=&AE;64Q+GAM;.U:6W/:.!1^[Z_0>&?V;0O&-H&VM!-S:7;;M)F$[4X? MA1%8C6QY9)&$?[]'-A#+E@WMDDVZFSP$+.G[SD5'Y^@X>?/N+F+HAHB4\GA@ MV2_;UKNW+][@5S(D$4$P&:>O\, *I4Q>M5II ,,X?+&A T%116F]?(+3E'S/X%/F7/Z3H=,H%N,!M8('_.;Z?D3EJ(X53"Q,!J9S]6:\?1 MTDB @LE]E 6Z2?:CTQ4(,@T[.IU8SG9\]L3MGXS*VG0T;1K@X_%X.+;+THMP M' 3@4;N>PIWT;+^D00FTHVG09-CVVJZ1IJJ-4T_3]WW?ZYMHG J-6T_3:W?= MTXZ)QJW0> V^\4^'PZZ)QJO0=.MI)B?]KFNDZ19H0D;CZWH2%;7E0-,@ %AP M=M;,T@.67BGZ=90:V1V[W4%<\%CN.8D1_L;%!-9ITAF6-$9RG9 %#@ WQ-%, M4'RO0;:*X,*2TER0UL\IM5 :")K(@?5'@B'%W*_]]9>[R:0S>IU].LYKE']I MJP&G[;N;SY/\<^CDGZ>3UTU"SG"\+ GQ^R-;88C'(CN]WV6'WV3T=N(]>IP+,BUY1&)$6?R"VZ MY!$XM4D-,A,_")V&F&I0' *D"3&6H8;XM,:L$> 3?;>^",C?C8CWJV^:/5>A M6$G:A/@01AKBG'/F<]%L^P>E1M'V5;SC MFED)O816:I^JAS0^J!XR"@7QN1X^Y7IX"C>6QKQ0KH)[ ?_1VC?"J_B"P#E_ M+GW/I>^Y]#VATK\>WZV22$KYI9+2,6D$N!LT$DN/R+RO JQ GH9%LE" M0AMNZ5/U2I77Y:^Y*+@\6^3IKZ%T/BS/^3Q?Y[3-"S-#MW)+ZK:4OK4F.$KT ML@'37[]EUVY".E,%.70[@:0KX#;;J=W#HXGIB1N0K3 M4I!OP_GIQ7@:XCG9!+E]F%=MY]C1T?OGP5&PH^\\EAW'B/*B(>ZAAIC/PT.' M>7M?F&>5QE T%&ULK"0L1K=@N-?Q+!3@9& MH >#KU$"\E)58#%;Q@,KD*)\ M3(Q%Z'#GEUQ?X]&2X]NF9;5NKREW&6TB4CG":9@39ZO*WF6QP54=SU5;\K"^ M:CVT%4[/_EFMR)\,$4X6"Q)(8Y07IDJB\QE3ON>;G*YZ(G;ZEW?! M8/+]<,E'#^4[YU_T74.N?O;=X_INDSM(3)QYQ1$!=$4"(Y4U#VT%SU&\Z.9X!ZSAW.;>KC"1:S_6-8>^3+?.7#;.MX#7N83 M+$.D?L%]BHJ $:MBOKJO3_DEG#NT>_&!()O\UMND]MW@#'S4JUJE9"L1/TL' M?!^2!F.,6_0T7X\48JVFL:W&VC$,>8!8\PRA9CC?AT6:&C/5BZPYC0IO0=5 MY3_;U UH]@TT')$%7C&9MC:CY$X*/-S^[PVPPL2.X>V+OP%02P,$% @ MV#-?5[8($'8H!0 ,14 !@ !X;"]W;W)KN(E(DH[HV'Q;*I'0Y7;.$KE5!.3)XG0;YM:*?Z3Q?X M_GJG?E,T'AHS%T9.5/QG%-K51>>T0T*Y$'ELG]3F-[EM4-_I!2HVQ2?9E._V M>AT2Y,:J9!L,!$F4EM_B=9N(]P%T3P#?!A2)\,H_*BBOA!6CH58;HMW;H.8N MBJ86T0 7I:Y79E;#KQ'$V=%$K:4F4^B H6=!SSWU@FWL91G+]\2>D8\JM2M# MKM-0AM_&>\!1P? =S"5'!1\">TPH.R*<ICZY4D,- MM^3Y+6OL!CRXC0M&O*/J'43SF0ENIXS?R)#.E;1,1+F5U+A&BDXKHY,"\ M: $V4,SB_4BXUD+$!F,:5$P#5.I@C5645U=@C571HH#?TE M7-<=D9D55A*ER43EJ=5O\!TVHN+B'\<((:.U\=%#&)_%*[D+891%BR@H0)%^ M;9&DO2X?,'\PP'J6O;-F=@CA. S!<\S1[H)\@/?(0]KLV+@D1)%/45%2KS24 M0XR3UYS\?W%.W!UT\[/:I(V,N-P]]$+P@I'5QL]0W_X/634"IUJMHS1H3B&N MB0^_VO,9[MK?HTV5L2(F?T79WFG1HDC9X(1B;'4E8+A_%QTXAD7>?A1_D)D, M<@W9:L3"E28J26 :SJP*7HY()C19BSB7Y,=C2CG)8,52+( PZKI(,-S=H8"& M4;HDL[=DKN)&V);R<'O_&2.I"P/#S7N7,'+]&JQ$NI1[ZU6+T/UX=C7&UCV\ MK@3\H$HPR;5VJXURB5&D"^PB-TUP+8I?T'4KKRL /Z@"W*6P'BOW+\2M\G>H MC62X8@M9[?G\(,]WZR"HY^"J2Z4;9T&+S@>A80R,@P#V:;!.D&$IB3'6[L\/ M6WZ_"#3OTZD7KH!=@L*=@4NFV0B;4X?+MB* M5GL^QRU[EZP5;)!1(%RF%:CV?H[;]FY6?F.3LV)/2!YR"]4R=9[6R%@J]PME M=RZQ'K$!9SU.S_C06S=AU06 X[9=;4JF4DG[0?F "A!I*YQWLS%_)[[*Y*W$I*)GTM,\X[6-DM?-SW+!W]GH3&5?4 MOTBH>&CR<+ENE_&NS[#C@;H ^+A=5WWZGNT&'C:Z18M82U?ZM?G[N%5_3[4= M:GN!DNM5S?#H9HM>9&H:['BI7DS%[)(M+F5BZ%:29ZDM5&1#XGG M!<,BRO#SXE"V6NGHP'-VN MD@5_Y/KSZJ,T=\.=ES0K>*DR42+)YW>#-_AF2FAE4"/^S/A6[5VCBLJ3$%^K MFX?T;N!5/>(YG^G*16)^-GS,\[SR9/KQK74ZV+59&>Y?OWA_6Y,W9)X2Q<GDWB 8HY?-DG>M/8OL;;PGYE;^9R%7]'VU;K#= L[72HFB-30^*K&Q^ MD^*5E=5 >=32O,V,G1Z-1:E$GJ6)YBEZU.;'C *MD)BC#RLN MDRJ;"EVASX\3=/'J-5++1'*%LA+]L11KE92IND2O#NYOA]ITK'(_G+6=N&\Z M08YT@J)WHM1+A:9ERE/ ?M)O'_?8#TU =E$A+U&Y)[T./\ST-?+P)2(>H4!_ MQJ>8D]J<0'3^7^O3_]SZ03#H;HC0VA\]XN^AG(F"=X,#_?7F26EIIOC?4*H; M9PQV5M6]&[5*9OQN8 J;XG+#!Z.??\*!]PL4YW,ZFYS3V?1,S@XRPG8987W> M1Y_XAI=K#D6_,0QJPVJ1V(QP'!*&;X>;_;BZ,.+%035<]F$3%Q8P+PK#0]C4 MA85!$/@=[("EOV/I][(<"Z6K.B2/LVT<^'L-^XP%5O?& "JD$;6XNB@;XQ0654UY1*9E0/QTM#G7&;E M O%GHX44!U>3T.D8);Z=J3& HK%OA6SBHK#'0L^.!02C<1S#L8AVL8AZ8_%H M!)(A>XD6O#2+;=Z$(4G-0I]5);824;V1B)QN183:G1^[J-"GH543)BZ*L"BT M9],4@-$ ^T:(QR^AOC' M3F>N2.C;(\%%D2BVZ0.N?&*[F@*N/!(SF#SV.A7F]=)OM989]UF]VH(:RG,' MM!=0.]D C'FUD#B@"\ P#N/0PDTA7(RCF!RAO"<\<2]EH_.-BB^-R)62E[/O M:&&V->@B-P,!3'7K[B!!41#'-GT AB.[.$P@6!QC.]T0C-'@R,J&24>>]))_ M*#=1=O54Y$6!S1F0<#1P* ,2+HJCV&;LPB@F1W/>23C\][)'+C*W$QF MAZD+,ZK%+5^ -X]XGF]S!7"!MS]7#LEV(@Z'O9O"CBPR2Q?:UA]D>'J5F.4[ M67!DWA35=R C9YK+*_YMG6V2O"IY]4>$&S!*O=KQ1W>/9_4V.:NWZ;F\'>:O M$YZX7WG>)RJ;H8NU2NO\U1F!"W+C)]P;0=XU=A8A"&7O)D&0[TQ/"'54;G3Z M$O<+S$F6KZMO7*=0CD^B#*+LK1:(VS+9(A/TQSQ9-L+^ '5E"22>+2;\LWDW2/M* D@TIM3?V8Q#'* EMTJ"_ MP)FC(,XGE!XAW8ECTB^.QXE:HC3;9"DO4U77IG:>UE$XI6*U+40']<,SXG'_ MSRY@L)&CJD 8P79T(!2.?2LXP[V3BH++17U$I S?=:F;+]*[I[MCJ#?UX8OU M_![?C#'P?()OILTA4^>^.?-Z5W]<4RCG<].4=QV:3,KF&*FYT6)5GY,\":U% M45\N>9)R60',^[D0^N6F:F!WF#?Z!U!+ P04 " #8,U]7JP[@Z7($ "[ M$@ & 'AL+W=OV9Q+C3O=ANYEDMWWH]$$!V= %Y$JRG>VOKR0(L4$FGEU>#,CGGJM[ M[D6Z:+JG["O/"!'@N2PJ/K,R(38WMLV3C)287],-J>0_*\I*+.0C6]M\PPA. MM5%9V,AQ KO$>67-IWKLGLVG="N*O"+W#/!M66+V[8X4=#^SH/4R\)"O,Z$& M[/ET@]?DD8@OFWLFG^R6)=F1!2D*Q23G\6]#:K4^E>'A_0O[KSIX&_8-]@'0LD6RYHV1C+&91Y55_Q MP(^% EM"3@"GQYC,'%NTOP#N05^)S1+<=5RJ>VD+-1G';2>+ZK/:,3GEWP MD58BXV!9I20UV,?#]I,!>UNJT$J!7J2X0X.$GQ)Q#1SX'B 'N8;Y+,XQ1]H< MF<+Y,>_+[_9^)(;;UH6K^=P3?&TIG*R$OVZ?N&#R1?_;E/N:W3.SJ]7OAF]P M0F:6).:$[8@U__DG&#B_F(0?DRP>DVPY$ME1BKPV1=X0^_QWN8WD.A>F!-2V M@;95N\5N#J,)#*;V[E#9/LIU)Y%SC(H-7([DVPY$ME15H(V*\&; MQ;>M9&M2Y/_)G6,M6Q)P45#.+X':_@=S]AY41*\K C^;TE=[]@_J*'2C3N'V M,5>^"SL5&?=1GN=WJ)8&*@1AY)O+-FP%"@<%>B!)@3G/5WF"=4LDXU5AMY)= M*,TN@=),228R K10$C4.8=F#<@L->; 'R.E+V,>&DH^,9 M-,L^!CJN6<.HU3!ZL\B2#%=K(F4K=(LB(Q]6QZ1"U)^:&Z".#'W0E8_/@:821\#S*2/ 3:D#WK5!PWJ\TDN M]PPD1WUUWV3#?SPSY,&N'$:8'T5=/0RXT NZMCG8^8K?.* M@X*LI"OG.I298O5)2?T@Z$8?!3Q1(6BI;S."4\(40/Z_HE2\/"@'[7G5_']0 M2P,$% @ V#-?5^\"U"W1 @ (@@ !@ !X;"]W;W)KIO5#-53:[<.T#R8YB%7' M9K:!;K]^9R?-H VHVOH%VY=[GGOQ^8[>1JH'G0,8\EAPH?M>;LRRZ_LZS:&@ M^E0N0>"7N50%-7A4"U\O%=#,@0KN1T'0\0O*A)?TG&RBDIY<&]Z["[CBV M^D[A*X.-WMH3&\E,R@=[N,[Z7F = @ZIL0P4ES4,@7-+A&[\K#B]VJ0%;N^? MV#^YV#&6&=4PE/P;RTS>]RX\DL&0+L"M%]K(:X \6LMG%4 %[I?QNX2 M-Z*&)CTE-T19;62S&Y=]A\9\,6'K9&H4?F6(,\E0"BTYRZB!C$P-+E@$1A,Y M)T-98.GEMB;60*Y%*@L@QQ.J4"$'PU+*3TB+W$]'Y/CHA!P1)LA=+E>:BDSW M?(/>61M^6GDR*#V)]GC2)C<2B349BPRR!OSH,/[R -['K-2IB9Y2,X@.$GY) MS2D)P@\D"J)V@S_#U\ C!X^:POD_Z^-_MKZ3C'9=)VW'U][#5Y?&WLKX?C73 M1N'#_]%T]R5[W,QNFV%7+VD*?0^)-:@U>,G[=V$G^-B4^+T?M/EE78[SJX=/.OD/#CO^>OM.WFITPK/.O&NUNBE5GAY$>XJ MC1NH.M'E1:U59L??:GH%J(6;-IJDUM!YH5ZZ//Y,/PNXP;)"/< "6 M\^HO?3D];ZA:,*$)ASF:"D[/L2>K&PO=V]R M:W-H965T&ULO5IM;]LX$OXKA#?8NP/[ M!LWV[C,C,;%02?1*=-+>K[^AY%BR.**]0' (D$CVZFWJH9O'G5320.WS=.JW39*YMV@JEQQ2J-5 M)8MZL;[N/KMKUM=Z9\JB5G<-:7=5)9N?'U6I7VX6;/'ZP=?B:6/L!ZOU]58^ MJ7MEOFWO&KA;';SD1:7JMM U:=3CS>(#N[H5J1W06?R[4"_MZ)K84!ZT_FYO M/NEBY(MFN-KO:# 4%5U/U? M^6.?B-$ %LP,X/L!_-P!8C] =('VR+JP/DDCU]>-?B&-M09O]J++33<:HBEJ M.XWWIH%O"QAGUK>Z;G59Y-*HG'R4I:PS1>ZMNY:\(]_N/Y&_7OR-7)"B)K]O M]*Z5==Y>KPP\V8Y?9?NG?.R?PF>>\B4SEX2R)>&4"V3XK7_X)Y5=$M$/Y\?# M5Q#O(6A^")IW_L15:+ M]:^_L(B^QZ)[(V='L8I#K,+G?7TKVPV!62.9O5!_[(IG64+PZ"SVKJ+.E6T MSVN1AB%EUZOG<3RN&4N8B(.#V1'2X( T\"/=STI1/ZO65!;CDLA*-Z;X+Q1G MIEM#]".Y8)PN$\&ZH"XX%\LP"&U]VMKJ/K15LH0>TVY5UR3*G^"GA(;5%3>T M/I(U*B\,*3440-LYI8X'+#]] .$X,A/Z,W/ARS3 M.T@*1)8IF,6'4IV.*TQHGZA8N"$>)PD+.'0#%C0,^"1@Q(R' 8OQ@*-#P)$W MX&_U0U&6,/6->E;U3F$ (_?)89),X+E&G,4SLQ$?P,5><)^A2FNCFT*A*RE& M$B>2*)H@0\PX#Q**8TL.V!(OMKM&;661$_4#V-Y6@IUP;38**N2H]6'($P=2 ME BGQ!&K.$AG<*<'W*D7]^_:R/(,B*GS\"2(TG3:IERSF,5@AX-D=*!,ZH7Y M+UV_R\YL5B)(ES3:K\$@CI8L2/Y/S6H?Q3A^(;B;)L0N@,4[MWK92%JP$V4( M:K,Q$- 6=(59=F@M VUMOI:D5@;%S=SIY6D43F&[9G$*S7@&]: -F)>.UU\ MLS1%_41*!?K04X9[1T>+((HC.@7JFHDX2O@,T('8F9_9_ZYU_@(-$H4FW)87 M,.HT;M2.1V)F(;.!RYF?S#_71M9/!7#4/H'ST^VR99HFTT:)6#&(:&ZV!TYE M?E+]I!X5K.0<5E2F*T6,_($W=.9R7$ %96(*%+.+ >H,TH$,F9\-OW3]VU.- M+LM%+'06.V(5!6(&W$"&S,^&?>?V@$.(+DW@)YWBPPS#A 5S%3EP(DO.$OUE M(4%6% :(&U7^S,NM?U;ZOY6WXZ '0F5^1CUHQJW\:04C&K#+DQQ$GE/8B%G, MZ$SI\(%-N9]- 6*S4X-807=C+D7%*>/3XD;,4L%%. -Q(#+N)[)7B*=Z!'N0R_;Z^5^V]>=(4#GR-56MP6^/+E+40'EP;0) MHV9Q,B,4^,!DW,]D4\H=+5$4K4M:<9HX67:M$M U,U@'8N-^8CO6J*>0(JP5 MI3$-IE@1NR2.:3*#=J W[J>WL535?S+++I%%- BGZ@8Q$U#+<\@'NN-^NCN; MF#FRNQ-".#(,LPO2-)HA9CYP'_=SW]>^;W=:_218C-Z0I")FX7CW> QUX$#N MWQB.RT&>V]3AL!0\,QOT,ULN>4[7J$I72&&L3 M7L+/7GT[. %/N+P4@G)TS]40.Y;&PTX]M&9KY]0[YK7[@GDGWU?DHM+RD #-N19EB ,NGRP]^3#SFQT8T\L MKDA *6EMSMH3YQ/O2:T/EFUK>TAWOK0S+>SYI8'R$WF IK6DY^<"S\ 583%?LH!W7]CK2+#S7*+)<_6!"*8B C6: M:W"#@A G3IWSO+ OW*#+V3/%=P ^D]L"NAX*%#D)AE!3AXT1PQ0D?32C)<6@ M&X1?-WQ51L)'L)^030TS@;S9L1@T@_!K!MA1[*I=V;UU MVQ_,Z@I:P<:^( 4M80_[NA,3>]X'U(P&X8J$=S&EP73CAME%*4_G4CVH">%7 M$SWWM;-]%@6-J(D@2<)T>F:/&HI$I#,*7@R*0IQSRCRB[&XACL/XBR^ U'WY MA9YDH(;82<9J]/;6OCK_IVR>BKH%E?X((^EE##EH^K?1_8W1V^Z%[H,VL+7K M+C=* G!K -\_:FU>;^P[XL/_!*S_!U!+ P04 " #8,U]7ED;6U+(# #? M#0 & 'AL+W=O??J.#4L@(603'0\)AIGQ M[S\,'C/>"?FB4DHU^IGQ7$V<5.OUO>NJ.*4943VQICG<60J9$0U#N7+56E*2 M6*>,N[[G16Y&6.Y,Q_;:7$['8J,YR^E<(K7),B+_?:1<["8.=EXO?&.K5)L+ M[G2\)BNZH/K[>BYAY%91$I;17#&1(TF7$^@= BLT(+,RGHBFDS'4NR0--80S9S8W%AO4,-R\Q@76L)= M!GYZ.A.Y$IPE1-,$/1).\IBBA0FGT,V<2)KKE&H6$WZ+/J+OBR=T\_X6O4ZS;O<"+>0H-\J$V-Q!)]9CDD@1&.YD(Q6VM_/SPK+:'B_FF3 M6L0.VV.;U_!>K4E,)PZ\9XK*+76F'][AR/O4)OQ_"M9(0U"E(>B*/GW(A-3L M/RB$6"B;BW@C307 T]Y2I4V&6A]V$3:R8.QNZ]J.S7P_Z(?] MRJQ!'5;483. _:Q9@QY[^[[G7>1P*>(MI4\2^3^+N1ED7<7=AO1_W1#SP<>BW*&@UC0)\ M6L&^C^+N1MJJX)+J/^Z6)V6TFK;*<&N[;_/I\SN1*Y8KQ.D2?+W> (+(XFNB M&&BQMAOR9Z%A>V]/4_@"H](8P/VE$/IU8/;XU3?=]!=02P,$% @ V#-? M5S]2U"]=!P &1\ !@ !X;"]W;W)KN&F?81*2T%"$"D*^].N[(&52)BZV M6[]8)+T SU[/+GAV*]6W9L.Y1G?;JF[.)QNM=Z>S65-L^)8U[^2.U_"?E51; MIN%6K6?-3G%6MHNVU8Q$43K;,E%/%F?MLTNU.)-[78F:7RK4[+=;IN[?\TK> MGD_PY.'!%['>:/-@MCC;L36_XOKK[E+!W:S?I11;7C="UDCQU?GD I\N:6X6 MM!)_"'[;'%TCH\JUE-_,S2_E^20RB'C%"VVV8/!SPY>\JLQ.@./OPZ:3_IUF MX?'UP^Z?6N5!F6O6\*6L_A2EWIQ/\@DJ^8KM*_U%WO[,#PHE9K]"5DW[%]T> M9*,)*O:-EMO#8D"P%77WR^X.ACA: /NX%Y## C)>$'L6T,,"VBK:(6O5^L T M6YPI>8N4D8;=S$5KFW8U:"-JX\8KK>"_ M;IQ5+6C:Q$R30OT96&'_"1;I!< MH25K-N@3^+E!4_3UZ@,Z^?X-^AZ)&OV^D?N&U65S-M. P>PT*P[O>]^]CWC> M-T>?9:TW#?I8E[Q\O'X&V'L%R(,"[TEPP]\*_0Y%^"TB$:$./,OG+"?MG+K-UV\;N;4TRGS8[5O#S M"61KP]4-GRQ^^ ZGT8\NG5]ILT<6B'L+Q*'=%[]"[1%U(;?V2WM+=;&G3IE9;%MZFI MEB4"(P&%-*PMPOS.7#L=W>V8''DPQ@G.1WYV2<5X[G9SUL/-@G _<+!!(3J( M4,C C> R??\6[2I6Z[<(2A?B?^_%SH2""WQFP<(D2;(1>)<4SE(W^+P'GP?! MG_S$3)!5LH$B7*-2-#O9L.J_Z9%;"*=DI(0M@HE;@WFOP3RHP<56*BW^Z86#!*3<;2XA-+-QPCJDZ-R7L'B@?!SDT\47SBKQ M#UC[9/TH=R%M>9< 8>S40I62> S=%L)'H?88^4#5.,S5RPUDIHEVT_ERI5J& MZVB0W7F"/K9K"H[3.1X#=LIE?BAD%=<>),[/>G M<3XN*0XQBB/L2\^!,7&8,K_6UZ*JP)Z*0R79NR':[)=0R_&V$'!,Y,$W4"0. M<^0OAP(G/%ZVN6V*R3RQT#GD:)+CQ(-O8$$^H3&4B.A$GN >1318G8 M] 1 $SSF8I=L8(,-$;"-/;AH7H>LKV-UFYZAX M.;1PPAVJQ*:D*?3) M8]RV%(GRW-.HD8&Y2)BY?C,)Y81ETPW)\'A*5 ,KD:P4MM*G@3W="Q.:Z*:5/8='#/ F[3 M8!P1G%JX;3DHYKFO!24#79(GZ/+8RB^?$XF#"0%].AX6G7))&GGHG@R,2<*, M^43*NU+'J8=C0L30+HV[/H<<)B3!GM)%!U:ET8MR?B5J5A?/.?X+LO6+S_]> M:;?'5AAHFSXQFX(WH?7I#MJZVMS!$.PX!E6_-=&0.E="^+H$ANVL3K4ZW M4INV*QH[ M>G0 '>;TR\[PW31M_GDB,1#*0>HJ<#T=/P1/IQM>+="F)M\ Q7A8A3I&6!K/+<4<8ACGOAF6#M1-P]3=.J@_(7@9=)N@86S M9#R".>0R:-(\@P,=>)R&>7SI XN81M=\+>K:1)8A2ZZ$+)TZ.,YW8:;)QM./ M4R[%J8],!E*G85(/*L'-/!R$GUO?4.@\2:+Q;.&0(VD:1>.A:';TD1&FFG7[ M[;5![:3;?:[KG_;?=R_:KYJCY^_QZ;+[2CMLTWTT_LP4>*9!%5_!EM&[#&RJ MNN^PW8V6N_93YK74,%JUEQO.@$&, /Q_):5^N#$OZ+^&+_X%4$L#!!0 ( M -@S7U<+9Q;>2@L "9F 8 >&PO=V]R:W-H965T&UL MS5UK<]NX%?TK''6G36:BB'CPE=J>V4C$=#MM-Q/OMI\9";;84*27I.RDO[X@ MI0C"0Q!I7V7WBRW9P+G /02%>RXN=?54U9^;->>M]V53E,WU9-VV#^]FLV:Y MYINL>5L]\%+\YZZJ-UDKWM;WL^:AYMFJ[[0I9MCWP]DFR\O)S57_MP_US56U M;8N\Y!]JK]EN-EG]]3TOJJ?K"9I\^\/'_'[==G^8W5P]9/?\EK>_/GRHQ;O9 M 665;WC9Y%7IU?SN>O(C>L?"OD/?XM\Y?VJ.7GO=5#Y5U>?NS4^KZXG?C8@7 M?-EV$)GX]LBJ;_Z3WMV_H3;[EMVFJS[RQ&L,G+W>_LR]X1 M1QT0.=$![SO@H1W(O@/1.N#H1 >Z[T!U"_&)#L&^0Z!U(*_[G;-Z M3R^R-KNYJJLGK^Y:"[3N14]7WULX."^[*^NVK<5_<]&OO9E795,5^2IK^^MLV;[]Z4^_7VX7WZH?77M/]N_'RTOME M76V;K%PU;[P?E/=7LU:,L+,S6^Y'\WXW&GQB-+]4;598NLW=W>;59B.NTMNV M6GZV]%ZX>_^X6N7=59X5WHK&^LA;L9J%*].L+O/RWN8# M=F8XR^5VLRUZ0GYNU[SVQ/3$76/=+>='[OVC:C34F>#\0#P^$(][,_2$F??\ M/B^[(7KOLR(KE]Q[)2:^8_6UE[7>@B_?>@2]\;"/D8U*)WYW1WS7/&1+?CT1 M@V]X_<@G-W_^$PK]O]H(WH$%/5AW-WR\05% 8V'X\9A)2)LI)!@# E.X) S38)H[&.U66HV"T(^JE1ESHPC7]J]?=[:J_:VCW.9N[*.3E#@FV@ 1+ M(<$8$)A"=W"@.W NBG^);5G>--M^/8C/L^7N0Z+IZ/:VI:![__I!+)GF^.YG M8]]I:RS[@7&SPT&HK2A(@RDD& ,"4T@-#Z2&@*3:B P-WU., ^V6%QHW(%^C M9PA,ZIS+6+<#@2ENCPYNCYQN_\@?MO5RW=T\=:>?63=.W+'K)C*]9'T?Q+]YK;_)V8MQ-$4:)YVVEW[*YA MD,D4TB0# E-80;Z,='TG+Q^RK]]BVU7^F*_XJ1#5-R\R0F*B7_MN9^%1_551-\]KKY+_'+"^R3P6?WE7UM,D*+EA[ MY$W;K:?FC5?R?E6UV1P6B*0.4(4#1VWB,J2U)K0&ZQ(2U7#BGUYV7[UO-Q+\5A M*U.@\@(R]044X83H,2RHU104C4&AJ7Q*F0&Y=0:-ST$A3O5UJ:1<@/XZ,C9[9;AIC2I,35[Y4!I!;&CB;1_C[MA".(P[' M@6H$R!0)4$1(HJL$H%934#0&A:92*I4"Y)8*K.F$\S2:L7EW_2?F/L\4#0@U MZ#'1$AKA4(]/+>T"A+%^KV.6=M,PB4-TXOJ7P3Y*+IE50) !]AP4;0&*EH*B M,2@T-7E&+ M9LP_1;$NYNU;N9(,@X!2]WQ&>_\20@0^.I7@%B*>GVEP X]>1)80/: &0;#G M$6 /)%SB1 *64@0^)T6,R3=@,W:>8NI'^MX96XX&&&=$0#6"$R/3-R(,RJKJ M;BD38+=,\)RD S:C841(&.H^!Y4'AAE-08TR*#25'*D.8+G#)O .V'!<("-+#4?<(1Y,(*BN HK&S#E%)E'H!/G>TX'MF M'; 9R4?&WAKRT,$"%"T%16-N;ZB$2DT#NT\PO"#G@,UC!=.(!%@G"%2H $5+ M0='868>H)WZE D'<"L0+,PYN]+'1$C$E!VO& =1J"HK&H-!4/J7L0-RRPS,R M#L14$.P9!TM#,^- 3+'!FG&PM+-F'"SM7!D'(B4" EBY8'>\.C+&E0&@$)3R3JJ3'AA:8*=(&MM0DP2/1*R-"14/X%(S! ^B1(41OJ5 M;;8+<(STW06SM)N&"3Y*,:G.DD$\H9?,)1#(F'D.BK8 14M!T1@4FLJZ5 ?( M]RQ41KM$1\TR!\2%E M!=)+%MSS&>W]2Z@+1*H+Y%)E"V[@T:O($G@C%.@Y;U"C*2@:@T)3F902 X&L M7B"69'^0A'KZ9DXLY0M8)P4T^#\Q,A+K6XQ+%# 0*0 0^!(&8BLH"%"L^QPT M\A]F- 4URJ#0U"I6&?E3F#H&:JL!"+&OBV5NX&@2 M094%4#1VSA\JA5(QH'^D&@9JQO(AUE4&]XA'3[]$3Q%)4" 4I3L .SX$* =16G("Q_LB=!:C5%!2- M0:&IE$HE@#Z[.,%%HZ4X@<8^#?5R16HK3M 3"C8T'_F)?LPZM30,2)3HU0[, MTFX:QL?/3U*])0-Y>M'J! I:G0"*M@!%2T'1&!2:^N CJ1 $W[,ZP6UL]+./ MS(C>.%8-:C$%16-0:"JU4FD(+EV=$)B1?(CU;5IPOCAA"$[JGLUHWU]"7 BD MN!!>R68IC1%-0H@T)3 MR3EZ2B),;4)@.]>/?:IG$]SF1C,"^QC$87-@4%952F2 '[RD-B&P1-]Q@O03 M 6X;HWD K4T8-@4&952E08H'P>]7FQ"80D"D)X'G[O&-IA!44P!%8V?P1&L^K<@]@ M-$.@(@4H&@LLE0F*0]0G]$KU(7QY98)#JPZMM01F)F%@NX5[M&,I $5C4&@J M4U),")]7<^!BQU)S8,TD6!J:F00;FC638&EHS218VEDS";.C;\SHOD'EGUE] MGY>-5_ [T=%_&XG+JMY]* M=-_+1RLNT?:B& M2KM]F/;!) >QZL3,=J#=K]_9"2G0%%5;^4#LRSW/G1^??>EOA+Q7"8 F#RG/ MU,!)M%Y=NJZ*$DBI:HH59/AF(61*-4[ETE4K"32VH)2[@>=UW92RS G[UC:5 M85_DFK,,II*H/$VI?!P"%YN!XSM;PPU;)MH8W+"_HDN8@;Y;327.W(HE9BED MBHF,2%@,G"O_.)Y)"#A$VC!0?*QA!)P; M(DSC=\GI5"$-<'>\9?]LUXYKF5,%(\%_L%@G ^?<(3$L:,[UC=A\@7(]-L%( M<&7_R:;T]1P2Y4J+M 1C!BG+BB=]*'78 2!//2 H <$AH/T"H%4"6J^-T"X! M[==&Z)0 NW2W6+L5;DPU#?M2;(@TWLAF!E9]BT:]6&;J9*8EOF6(T^%(9$IP M%E,-,9EI?& 1:"(69)90"8G@,4CU@4Q^YTP_DM,I&C.=@&81Y6>D0>YF8W)Z MUO4KK:H?8P]'%&5D)BM60QX ,D*)(E$FN)EK,Q) M)J>YBJW53L_J=JD(<&X#F :S#KVFU_/V?G[?7>]N1BVFV]GW&M=Y!0=4DSHG M_^*):D^63B5+YZ@LM_2!P&*!?Z>*X5]:JS5_9[G9@'_J7([_&/L;/@J*+/]$7 MWQ375"Y9I@B'!8;RFCW,6!9]NIAHL;*-:"XTMC4[3/#3!J1QP/<+(?1V8@)4 M'TOA7U!+ P04 " #8,U]7E1D[TTT$ 7"@ &0 'AL+W=O"\? MAGV@J9/%E2)5DHKC?[\[4G:4P3RZHSEH\ ?"K=^\ WLR=K:K[SX5,ZS,1-"C3(P@J#7'5ZCU@Q$-+[U MF-G!)"L.O_?H/T;?R9>U\'AM]9^J#/4\N\B@Q$IT.MS:[4_8^_.&\:35/CYA MFV3/IAG(S@?;],K$H%$FO<5]'X>!PL7X"86B5R@B[V0HLGPO@EC,G-V"8VE" MXX_H:M0FF&Q2LD 6\%*;8RJE!0FP%)*VYF@S 9NK%92H9_E M@>RQ5BY[[*N$73R!_0-\MB;4'CZ8$LO'^CGQ/) M]F2OBFX;MV8'MV7/H_S-5WPL;EAY:=(T* 4M8[R#4"*[3](>4>;%"V3D5 M6%:8$C[+MB4TL=8(P<*73KB 3N_@%EOK B$9X)Z#R?CU MEU,&]0C&!D9T"-)2/1E/YAF_M/R+-P/-(!!:0ZF\U-9WE ,:'-\ZY1+5#1IT M)+"C82"Q90?$@X>M4T:JECTY^;A!Y $9T1WU WU$# I+*\SNY8N+8G+^CN)K M3$<8*13#2/P,-(.CR@Z% ^2F@O-!?H?>]_D=P:?$R[;*](J\;(2A(Q73 M%@W$#3;Q*%J=$5VIGHS;,)VB_(<&8=P_C2#*1\K$P_!DUJ<48JHYQYN/A >+ M0Q8H=50;'O>YD?8.'1=KY6P325=4+W#R"V4+)N?D",L=(U M8F][7QRA=HBO&YZ\4P'<8&''F6G(Y9H/[#OD,K<-]@#"UU#1^?_ &UL MG591;]LV$/XK!PW8$L"Q9A70]<;5%DP:DJ!Z,T/1M40NED-@ES=W8V,8TOE<8["ZZI*F$?+[$T MVVDR3'83"[4N/$\,9I-:K'&)_KZ^LS0:=%$R5:%VRFBPF$^3^?#B!W MA5OWY!N8RD79OLSMGS><#QI2A=^8=O:I@G(QGE3M_D6YWUFC3:(DDMG>3@:>XO#J0;8S+&&/T3(P?X+W1OG#P5F>8?>D_(#P= MJ-$.U.7HQ8"WTO%J(7&: MU+R7W6 R^_:;X5GZXPOTQAV]\4O17YG#_QH#YE+2R"N]9AET)FSFX+XFW1". MYLO[8TY/>I*.>Y L,$>+Y H+7J8AM0P M4WE U'7Y"-Z *$N@=>45.C(0 M'@JQ09#49ER!K@<%9FM&;[$,BKI"U2YR,Q31 AEJ)\+1UX:P'8]?WUW>+L!8 M,H_&^R7+D/&AIK1@QE!6")ERO+/2#4VM4(K&!5K_\+)!F#ZQ72-'[04I K': MFHW*R*EF/*03[Y"I( %#Q@>)=82:,RS6@=FM42/)2J((R1:TO]AGKK:*"J,N M2:.CG^;SNV/&^[\U$J$6F>'C86:@+BD8"R MX03=;M!J?BKL#C;B%*XI95%W:CULE =H?T%%4&HNA)457.)F,"9 M;C0:ZL?O2-KNL'3[FXNQ< ^7QA$$US]TY0R>/"$JM.OP4'(0>BV^)KK9[BTV MCT^0O7E\R)&JE"T')>;DFO:_?Y. C8^C./"F#@^2E?'TO F?!;TGT;(!K>?& M^-V -^A>J+//4$L#!!0 ( -@S7U>.3WM\Q 4 -$- 9 >&PO=V]R M:W-H965TL 6: M;;9INP^+?:"DL46$(E62BNM^_9ZA;$5ID[3=A\2\S9G;F2%UM'3^*I3,D;Y4 MQH;C01EC?3@:A;SD2H5M5[/%SMSY2D5,_6(4:L^J2$*5&4W'X[U1I;0=G!RE MM0M_'93,ZG Y\T+T-O3.))YMR53-X4QX.Q&,2&\R@("C_7 M_(*-$2"8\7F-.>A4BF!_O$%_G7R'+YD*_,*9OW41R^/!P8 *GJO&Q/=N^0>O M_=D5O-R9D/[3LCV[,QM0WH3HJK4P+*BT;7_5EW4<>@('XWL$IFN!:;*[592L M?*FB.CGR;DE>3@--!LG5) WCM)6D7$:/70VY>/)::4^?E&F8SEF%QC,B'L/1 M* )_[<:-$7'65,54_]7-1?WZCWG?HLJ5>!W)Q 'I>QIS5]Z(FV MT.R: $WAZ2']U;@(O NO6#W7N;*1WL%&3Q^MRR2ER8$WMFY@YY.W M?,V&=IZN(W8HI.<5"M)?H8%J"RHU;7!_H^EL,MR?[&'T^-'!=#)]WAN]<+YV M7D6FS,&B;GUG]FPX&^]V\P\^N;XBA,;<'-L#\FS:39,Q6YG*K^!3D("T8>Q0 M]X?CW4DWO737[-&N[#?*)\-GLW$W>Y4[ZRJ=4\G%0E+JE\H7A-54+CVQ9WO= MN,>>PU] F![<> Q^O'!5K>PJ+>T_#U3=%V3AIF=$,GY'#FG5!36ULXERA=*F M@Z@E[6(/Z0(XR'K'1+VY*-9GPS"14Q0)*QA"3+G!:;!%E 9J.3'9OM/T@K/8 M3XF ?1^('_H!+RI7L-DJ/&RS:4_)M98L7I8Z+TD90Z%'8]UR5K![3(;3V)6J M*EBP8(YW55IVWKLLL;*@;-476L>MP V3PA8:-$WH0 DCJJFD&VB/["NI/EE( M\13835VO?C:2TVTZ5Q8O LDQ:>D& 6D,6BP1[1RBQGV>L(7=8PJ'6)(^314--+".9X1MVW2"X)AYISX4U*<6+R MBIK K>%]9.B3\LLC^C&M-!O0N,&]%U)FKM'DT60IKFI.??@N^BLOO!.:WQ3F M3=JG\L4S*[0UG#NT MIJ]SF _;G# M V8]$07=5]S)?U!+ P04 " #8,U]7.X \=ND( "9%P &0 'AL+W=O MZ75(]);@ST(\Z,&:D24+*;_2P^_+BXE+ M"HE2Y(8DRO*O8FG6%Y-T MPI9BQ9O2?)(/OXG.GHCDY;+4]I<]M+2A.V%YHXVL.F9H4!5U^Y]_[_PP8$B? M8_ [!M_JW1YDM7S'#;\\5_*!*:*&-%I84RTWE"MJ"LJM47A;@,]LE^K^^%-A5MG,\-#B.6>=X)OFX%^\\(SM@'69NU9K_4 M2[%\RC^'DEM-_5[3:_]%@7_+S0ES/8?YKA^\("_86AY8><$+EELSQ\:S?UPM MM%'(EW\>,KN5&AZ62C5TJC<\%Q<3%(D6ZEY,+M_\Y,7NV0LZAUN=PY>D_R_1 M>E'P8;5?>1IKZ7*B$V.Z8D"72]2R-F+)Y(J9M6 K60(4BOJ.'1YSJQGS O M#ATWBMB5UL+,%CS_"KNTR!M5F$) CN.F(?-C)\U<]AEXJ1OUR!9%64(3)XP@ M 0<$/KN5]T(!/.KN@"S)V)N?4M_SS]C5G:CSQ^Y%O^E%3AJE[$-3%WFQX>7H M=>Q#Z48I6//$^YZ7.%Z8,-]+G01^&AOF!]A/4@:CG3#W[D M[BG>I14EU5(LS%"=0NL&"B[(A6;-EK+"245N(X^&9E7+9;7A-:C/&'_&JA=. M /Z64$7QLOA7>])& I*)5"%GD5:+$F12L5+R6@/=H4>NQ+(P3-1K7B.O8?D9 M,T_=_2JCJ(:^G-R>L#MR=-T*TB.G#R45T,FT G=2>D?LA) KAIDW%-&[$!;U MC')1%G>R>GE4(ZD\-W^S.] 2VXE_ !G+=1A0:167/#UOQ>#$50-( 0 M9U9$-H#_H4\MT:\YP1W S8;I'26+HM/R7#7V!:R'/P>Y L7I2:IERSBY46+#"WCJ M.P8QW?D2V8P3^PJR>:LG3-:= 7!N62SMV=>\I"1CMS0BM,R\DDU-[XQD1T"Q M#'^N:U\=!0 WMWU\O<4.--8;80>L\O&$?7Z"[<::U4Y]*!(]=+(%K>0,>MWS MHB3"&;)JICDY8H +AY49=XVK2BICZ_"]DEIWO[_R0K$_>=F('A=/]S $[<,# MXJ0I5CV0'K%CP%CL3>W;%O6?1WO/3[>0Z7I#^-^ES M9R/=U#"S!>(2SUVMK"C^]Q1_39#UHU1#3O%Z+ JHKHOV,^)5F?AEQ_X'L=_T M[/B4.&5_"&W1KF9P9SIBA),65Z;H=ET+\GZ]-K.1DZ&T>78 M\T [7,/@#(>X =E!\Y.US8\BI&YO<.9&-@O#U GB=)B:'WB-3F8[1B7KPDBE M]_J-;5Y!L:M 5!1NDU#5R$M9):>O"P7R\-+>V['LO:3GY0NZKQLEB1^#0VE*JB/DFA5H,$+9]N)(&MI[>S&?\H46=L* MIFD!T[;13]1:-::!T^P8OD+%HSE>XR-[V?8R]$)!E6NU<%@M247Y8!L:E?(3 MHXAE')4'/NBFATL78O8:FFUA4(O8Z5#J;.3[86.F(+RDS1(Z$'R!S*R5$+.* MRIN.JQ'Z[HD\*)''@CZ2#ZG6;_D#Q5X)CC_WL+C-Q#N.[Z%N$NH]1@P6 P_, M4&346'_B?K4!1#RR8 \J/^^$=Y<%[.-6?K\S%CP6^J/W[P\Y@E P>]+PVV;]DL_0-_\*,Q8]G'+08!R'!.0';5L@T= \)1]>C8V+990 MW76#X.Z3F_8QAQ\>^&YIW&U;&64[ M2.YB?L!J%2/:KT,<=:BT'0G2%T[2G5 M9806XUQ!<0H[AQO^W6DGX&&QZ#7,6Z&/!WTV#7M%^^V," MF:"NH%Z$)S3/9#?6QDZI5!U!>0( &@% 9 >&PO=V]R:W-H M965T;(SIX+J2RRR!WKIR' MH4US++@]UR4J6MEJ4W!'4[,+;6F09PVHD"&+HG%8<*&"U:+)W9K50E=."H6W M!FQ5%-R\K%'J>AG$P3YQ)W:Y\XEPM2CY#N_1_2AO#0Z6P:1%X024^<9. U/^ 6E]$0DXT_'&?1; M>N!AO&>_:GJG7C;\T=T+7 J;2FTK@_#K8F.= MH>OP^UC'+>'P.*&WR-R6/,5E0!ZP:)XP6'UX%X^CSR?D#GNYPU/L;QW&2?!Q M:0>,3%@$#^3+,Z'.2J-3M):8)Cɸ& M*Z$$W=T,=EIG%D9L$(T3&,X&T]&0\'&2#*;CL8\8&PRG$1S[R>'![2_0[!J/ M^Q8KY5HC]-G^&;EHW?.OO'V#;KC9"65!XI:@T?ED%(!I?=U.G"X;+VVT(VWIUTOM+FG.:%"M5/!H-)O^"R[%V>^WMOS.6YKIV2I7ACF*V+@IOUM5!Z==&+>^V-MW*9 M.[K1OSRO^%+<"O=+]<9@U=]HR60A2BMUR8Q87/2NXK/K$>WW&WZ58F5WKAEY M,M?Z'2U>9A>] 0$22J2.-'#\W(D;H10I HSWC<[>QB0)[EZWVE]XW^'+G%MQ MH]5O,G/Y1>^TQS*QX+5R;_7J!]'X,R9]J5;6_V>KL#?&YK2V3A>-,! 4L@R_ M_+Z)PX[ Z> # DDCD'C\[Z*([_;21NPYRR0?D9NR5+EUNV?=E)K)]^3XP;( D+9#KY*#" MUZD[88,X8LD@&1[0-]PX-O3ZA@<=8W]SFS%4W'1 M ^&M,'>B=_GE%_%D\.T!@*,-P-$A[0Y$:PR M$L=+JG6XF>$&CK!QDIZG1EO+,KE8""-*1T=&96"<8$JGG,Z)9:LI M+K,Z=99)_)&RL/.$72G%](+V6K&+(57<6KF0L,XW$N6RV7+";H '!:,5*;BW MX6_I*J!PFHE[)\J,:<.<,. ^=P&6EV+<[6)$#*Q6 J[9U A2 726P(%8>BX, M:Z@5D10@KNA?J7?M;:UPF'4K!&A]7"+\':!<#OM>!T]379<.KJ)$,GA J#+1 M*J/2$T+4X*8'?BM*I'6P=" P;5#\,M C*;4->[$+VF3&UUB2LW=@#)\C?A5?DQ*X2LF#OYQ H&0C M@F!6*F U$_^II\2@W7BN,.JX>D@9Q1Q_" M+^FC8+K<"'%<4!'R'E">FB4DIEG*OT#U]NA9BW&AM<44J".5 M=.M/E)QXN).:9/9$!#XY41*/)0E8DB@9C[=H)M%D-OLL1-F@\D1)0)1X%]9H M,OU?$&4O.<.=S,3QH"L +VI7&_%$4JAE<7)284:U[&M?Q'5MH=A^<\9^%]R$ M.8=])U)1$(XA&'M54.%G;P4-OQEN(GP+204WD/D(:,?Q@!8C%L?1^-1?C]DL MFDRG=#EATV@ZF]'E%)?),*;+4S:)9K,DE%B^0&;8"!E.8FC$:4B@DO)*K:[I M/'X\ 90[KFK1MIM%<+W+86S'U I!>,KW"+)-$;0AP[??!#[>9ER7ZLT=\W@\&6VHBK\0'R/3 $AUC+D? ! M+X'ZP;A+=<5AJU[C-,.O*56%$V&3?4/Q1#"5 *);YBTG-^9A0#YM]9N MARD=2'/O]8.BY*NE[7EDCQZV!Q-C?(\U4;H!M?T81U:O,>?!=W9+[X*VW=*& MQ$^&M#'DN0G*-G1M$K?D#6:E;5B?3#^:7_Y-.#@;K#T"T=3_CA1*VX[0"UT; MJ-W/V_AAWJ3SK:"M$IO4/1VA"$+&UQ_9EA)?@)Y?3?Y3!ZAIC$U+>.">U:GT M(?.9[007F@9F->I:X4R4NO3-)YP-R$"Y?ZE 1C?=X?D'YR!F(Y170:]Q77"Y M?T]Q3#YSW@L_Q4N-[QJ;#P:OXH_O&Y(FV@;>D?*Z-KI=YQ%XA M"3S-\<+F7'L$']7OYS88 GR%!4C^R>K^OT;6\I@D.\O^XV*_D,:Z!S4C>4ZM MGT7)--XM]9D6HYX)B1:0.>$_O; M!1G8?(2^_!M02P,$% @ V#-?5P6Z]$EU @ =@4 !D !X;"]W;W)K M&ULA53);MLP$/V5@5H4"6!$LF2GKFL+L),N.00- MDBZ'H@=:&DE$*-(EJ2CY^PXI67$+Q[U(G.&\-POYN&B5OC<5HH7'6DBS#"IK MM_,P-%F%-3-G:HN2=@JE:V;)U&5HMAI9[D&U".,H.@]KQF60+KSO1J<+U5C! M)=YH,$U=,_VT1J':93 .=HY;7E;6.<)TL64EWJ']MKW19(4#2\YKE(8K"1J+ M9; :S]<3%^\#OG-LS=X:7"<;I>Z=<94O@\@5A (SZQ@8_1[P H5P1%3&[YXS M&%(ZX/YZQ_[1]TZ];)C!"R5^\-Q6RV 60(X%:X2]5>UG[/N9.KY,">._T':Q MTR2 K#%6U3V8*JBY[/[LL9_#'F 6O0"(>T#LZ^X2^2HOF67I0JL6M(LF-K?P MK7HT%<>E.Y0[JVF7$\ZFGY3*6R[$(K3$YGQAUB/7'3)^ ?D.KI6TE8$/,L?\ M;WQ(50REQ+M2UO%1PB^9/8-H/((XBI,C?,G06N+YDO^T!DSF<"4MDR7?"(25 M,6@-7'*3"64:C?!SM3%6TP7Y=6@,79;)X2Q.-'.S91DN U*%0?V 0?KFU?@\ M>G^DA\G0P^08^]'C.8H\7-Q*/S) )2 M$NE$ CYVV4$S^US)R7@TGZ$<77\S/-MX%$UB.#3@<$\+->K2*]Y MIAII.UD,WN%1675:>@[O7J1KIDLN#0@L"!J=O9T&H#N5=X956Z^LC;*D4[^L MZ&%$[0)HOU#*[@R78'AJTS]02P,$% @ V#-?5ZUI#K9L P OP< !D M !X;"]W;W)K&ULI55M;]LV$/XK!VT84D"+7FU) MF6W 3K:V']H%:;MA&/:!EDX248K42*I.^^M[E&PW61QOP ##.I)W#Y^'O.,M M=DI_-"VBA?M.2+/T6FO[JR P98L=,Y>J1TDKM=(=LS3436!ZC:P:@SH1Q&$X M#SK&I;=:C'.W>K50@Q58>*.-ZUU$\%JT;,&WZ'] MT-]J&@5'E(IW* U7$C362V\=76U2YS\Z_,9Q9Q[8X)1LE?KH!J^KI1<37J,0#HAH_+W'](Y;NL"']@']EU$[:=DR@]=*_,XKVRZ]W(,*:S8( M>Z=VKW"O9^;P2B7,^ ^[R7>6>% .QJIN'TP,.BZG+[O?G\.#@#Q\)B#>!\0C M[VFCD>4-LVRUT&H'VGD3FC-&J6,TD>/27*S@+^6]A+"R(,E18S+B)<_@O52JVG$A@,D*G@B&&VY*HJY,STI<>E0>!O4G]%8_?!?-PY_.:$B/&M)SZ/_MGLY"G";X]#C6G=*6 M?\$*^+R6+92"=5P-/ ]Q+D?1AD9%U'ASXKP!9FYG\897(]%@)J> M ,*A2C8M[PW,_#S)X2+UTY"<(S^ET5LE?RQI!]H 6*,1Z?4@UDD:PD4<%>06 M1[!A@LG227(B*-?4EL#WV4:[)JD?%3/')$[]."P0V3_ZAZ09+[)RH9%(5/U85^5D>C61B/XU2NO<3 M!^$#&LN[464]6%<<;$J,D2_@/;4%@Y, IUV=2)<=\:'?E"3F28K\@4Q/C\9C MRI2!@[1PAZZI5#1)]&HJ4B8.=Y2%A3-3B/TY39 Y(S,)0V?.W%3IJIJQ=;@2(&[3^WJZ*E=3 .K^O&)WBI+>3&:+758U,Z!UFNE[&'@-CCV M[-574$L#!!0 ( -@S7U<,PWPS3@0 %X) 9 >&PO=V]R:W-H965T MC:F7N=Q6*1G"4BHUS6)GYWVR_4Z3EA/.5,:'[% MMK6=I8E0=8BN[)S!H-2V_9=/71X.',[&KSBDG4/:\&X#-2QO9)3+N7=;X=D: M:/S02&V\04Y;/I2[Z/%6PR\N[Z7WTL:=^+8R>BTY4V$^BD#F]R/5H5RU*.DK M*)_$5V=C$<3O-J/L1_\1&/6TTCVMJ_1-P&\J#L5X,A#I.)V^@3?M94X;O.DK M>+?>9;6*HI.K*8@;'91QH?9X_N=R%:)'A?Q[3'L+/3L.S5US'BJI:)&@+0+Y M#27+]^\F'\<7;Q"?]<1G;Z'_[_-Y$^4XQV/0XL^"Q+4K*VEWZ#GE?!9$Q!Z% MJ-$#E GE0A0N%WEMZVD M:? 0P^T!A3)2EV'X ZU2[H0TP8D5=;2 %.I5H,>:;&3WG\)M"[*T(4R@BI3. MM1)86<1R7JA"VC5H:BN4]JHN0Y16\0:D8U R ?\:@M"4BE7@UL=&.Y <89&'8K[0C-)I-:N,?Z8"CU% M'G? >AD&UL MI5=-<]LV$/TK&+;37E1)EC^2IK9F;*>9])!I)FF30Z<'D%R2:$" 4#)ZJ_O M6X"D:4=QI].+18*+MU]O'^#+O76??$,4Q%VKC;_*FA"Z%ZN5+QIJI5_:C@R^ M5-:U,N#5U2O?.9)EW-3JU6:]OEBU4IEL>QG7WKKMI>V#5H;>.N'[MI7N<$/: M[J^RDVQ<>*?J)O#":GO9R9K>4_B]>^OPMII02M62\22-\Z?1_17 M,7?DDDM/MU9_5&5HKK+GF2BIDKT.[^S^-0WYG#->8;6/?\4^V9YO,E'T/MAV MV(P(6F72K[P;ZC#;\'S]E0V;8<,FQIT!X>O"OO"]M:VK0JHS>9)P%^+L!3KDX78K#>G3^"=3NF>1KS3?TW7 M?YFO>*E\H:WO'8D_KG,?'#CSY[$J)"=GQYWP'+WPG2SH*L.@>'([RK;??7-R ML?[IB13.IA3.GD)_.H5CP?X/.''MA:T$NF!S"RR6UOFEN"47("XDZIC!%^[Q_4[[X>CQ.5QYN!93C5_"O+ M4K$'J05+=!\:Z]3?"'2>T:SV3/% M2K8H+,F?F>10TO-HQBGI),J(8(2YX,I M$0"0.@V^EQ"OT#S:ERIW@ <3!PK],GV%!P3@!(Z51_;2>VIS;B2B+/LBI/[, M^.;C#IMK5:=."S%J]X!Q+76T4.!DD7A>HPI8T#=/1ZM>3 1(PG'G*:YJ_X; ME:* ?;T! D2+C<2M)M&N4*[H6QY]I+9(M0>]X1T*'(5EG#$%<2BX$G$?H^RD M[FFDPRP(EL/$+I2QL#MR'&8J":N;%SA;$!-S3N&0*>$6 M!G 4-91O6AKI]"[5/^\]9L GRD"QHT3&=B&N0"8I54Z-U!7;XY.L<5SX,.? M2/U]/":X.AA6%#0907U1/[H_89 CA@T-V;,H:$6[H>Y,)ZW&XB!9S^$,;:<6 M$P@=9O@XXY*!,,I(2);H Y"IJO@HXFGI'<\).L_?.^M5T@RM/O<**HZ#"[E@ M$'"]C%./>[B+NN*7QVX1J]D=$.);J)OY&N M1@71N@I;U\MGYYEPZ7:;7H+MXHTRMP$G07QL\ \!.3; ]\K:,+ZP@^E?C.T_ M4$L#!!0 ( -@S7U>9D;ULZP8 #H2 9 >&PO=V]R:W-H965TO&%) C2WY/4T"Y*59-[1=T*P;AF$?:(FV MB$JB1E)ULE^_YTC9D=V\K/T01R3O_9Z[HW2\UN:SS:5T=%L6E3WIY<[51_V^ M37-9"GNH:UGA9*E-*1R69M6WM9$B\TQET4\&@TF_%*KJG1[[O6MS>JP;5ZA* M7ANR35D*OU6MOZ,65ZJ M"^M_:1UH)R!.&^MTV3+#@E)5X;^X;>/089@-'F%(6H;$VQT4>2LOA1.GQT:O MR3 UI/&#=]5SPSA5<5)NG,&I I\[O91&?1$<&?JYLLXT"+BSQWT'V4S13ULY MYT%.\HB<.;W7EWR]V'3UK!D8]AY\J3 7U-W2(,XHF20#)^0-]PZ M.O3RAM_D*(DJH[,$.64M'2I;%IHVQA)?YTM0 [T_/U05(+2T<-* MN:*.;"U2>=)#R5AIOLC>Z8\_Q)/!ZR=<&FU=&CTE_1MR]Z23@M+4D5Y2FHMJA22IRA-_ M$44C>1]:*BM\M8?$+D0!9E!FLM(H'HC/F&O/8$XX_$8=,PJ61I==%5]Y)V_# M*;%3]K ;$H+5TC ;/)*I9JTIY< 79#5.%>I?KV)?)#;6PF0$#@\UBR[@5L'*&-[632I M:T2(T?/>D4 NV62D#4U;09&/3\OVJAM8(U,)R"P*&:)?BSN_"!%:84"$?=25 M!8GVV;,2R=D@C=5)#I[D)L+F+CBQ2XOAM+CSONSE?BF4Z0 .P+"V[HNE%@@ MY#Y^"\E>^$QDWB HWD\0*^?X!EAZGX3UA\RK.E4 ]P,3IDJJF\H#QV$H.CX_ MI+,L4QQB1GE$&9+(Y[D,67KELT0U_-89!5_1[O1"&FH;7N2I=U#EH8N0B.?A MPY';YO'3XJB$"88SOUG_'HTB :#[1]S!(=8[R\":CE"?\J*ZL9 $A: M0'H?YO2?!LCPDQ5;[S5P*F]AL:FU\?"B \Q7> 3)'U#.%,\WO##3ZD)E/L+W M!6X=-GQ\7Q[2ISK@@Y!-5X0VXMG10C9N[@8)\-.&0_E @!ARS/YB%HW&$^\T MK7.5YK06]IX3H.I=[?,R<.F );SLM:"%SHX'-UN[6<6O2&M;7ASL;TGZ;BO) M118@CM3I-0,(=RK$J,K:%K+7,0Y\2>C&@L*^/-H73I;_]?Y,H; M\%%6Z$T+!6^#N&0:C49C&H_]:AI-@,GW\E:EHJ)K:37%+>$XFB(^\2P0SJ/1 M;$!O&QAA%$@!$50B CL?;LB3),9Z/ _K490,9W3.K=OF=(T&D=$0>W OFH\G M^&4SX-LDI@OTZ8REMJ[%T60\P&^2C/$['?KGZ8QNU@H8OL*(2[]R.([BQ-/% M,^0BW-3#I1D69YO>\W6O?!I07!K"MOC[&E]GW&AW /*N[;=W.[OG80C3%:O_ MW:M_8.O&OX$\C]G_2_<=P'VS,PX>",BUD;50&<]3O)6T4TXCD*;M%FXS?5Z@ MVTT\XG&I3$TC.TPX2V;X'4WGOM[OZ]OQN"1_!>-FPAE:&>Y<(EQ,?:,GS)3. MR'QLWK7=#6-C(Q V\%L053Q,A57VP6:V28V/,RY.C;\U,)GA]QM&3CN0_0U% M"FCQ$U":6AB8^+TP>3ZESU/\%*)5LCV^&7-G7U7J7Y_U_A"N MJ"^[B%#5MLCU_8A_ZK: =!Q@J"53?IKZ9H^=610/Y[P38[C,8WKH/;#?>9\O MI5GYKQ8VU%EXM=_N;C^,G(7O ??DX:O*>V%6[%(AEV ='$['O5#)FX73M?\Z ML-#.Z=(_YE( 'TR \Z7&Y:U=L(+MYZ+3_P!02P,$% @ V#-?5T[->>PH M!@ 4 \ !D !X;"]W;W)K&ULQ5=K;^,V%OTK M%^Z@FP$TL9Z6/$T".&F[+=!V!C/M]L-B/] 2;1.51"U))>/Y]3V7DFPGDYED M@:+[(3'%Q^4YYSY(7MQI\X?=2>GH0U.W]G*VC>U:J5;PW9OFF$V5_+6M]= MSJ+9U/%.;7>..^97%YW8RO?2_=:]-?B:'ZQ4JI&M5;HE(S>7LU7T^CKE^7[" MOY2\LR=M8B9KK?_@CQ^KRUG(@&0M2\<6!'YNY8VL:S8$&/\=;[G!4SJN1&]+5[I^]^D".?C.V5NK;^/]T-<]-\1F5O MG6[&Q4#0J';X%1]&'4X6%.%G%L3C@MCC'C;R*+\53EQ=&'U'AF?#&C<\5;\: MX%3+3GGO#$85UKFK=_)6MKVD=[+4VU:Q4A=S!\,\/"]'(]>#D?@S1I;TLV[= MSM)W;26K^^OG '1 %4^HKN,O&GQ3NG,*HX#B,$Z^8"\YL$R\O>0)EANC&[H! M5H-H@-)N1S=>8VGHWZNU]?W_>4R P7[ZN'W.G->V$Z6\G"$UK#2W]H4HW MJE38[4SQ--U;T5;VY6L@,E*^:DZBB7X!D?L]B Z]AL?&^#A\Q_X[?G)\!3RJ M%)9>4!$&4;9 8Y$%19JC$:=)$"Y\JTB#,,OIN]Z@!E(6!46<4UH$RR2D:%$$ M6;RD*$^";!'1/\'=88^;G6H%)6F0%ADM%D&ZP-QD&11)3M$R07=$;R",H955 MF!@&>9Y@JR#!_&(9I&E*490%658 0K3,@SB-&$RX#!; #J1I&!0Y \QA?P& M?X4;IVZW[_Y/7GGOL)LP%75&5WWI+.&;.)=4*=E740YGA2FWL@*R<"O+X+>$ M!5HD>9 M"UIU70WG,J]7MI.EVB RIR@DJ^N>ARS%>1#!)_!JDA=49$&8+BB* MEW#Y\MG*WV@+G$[3]WV]475-XEA=#F.;PU@YC2%3X("R[EDXB#U[:V0G5$7R M TY;*P?NVL=)V1LC6ZRQ5CH[HS&QL _(J,H[]5K4HBTEO??G.*\5#6<;A@#@ M191SZ 9A&/JQ%U$:9'DQ?%O.QX>^X5G?RE(VW)D,O? 32ELG_3%:[\]I5?J, MMEQ2I+KEL N.]%<>;N!-'3I_4F*M:A0?,#PL-X?E:/KRR6R;81#3:[!@*Z,0 M]9ZJJ91/?K5TAP*T\[K"AC;,7#@62AEJH8FT3C5C HA:??3;W8JZE^<^?VYT MTXEV3WR/L>OO=K(]IJG?ABOVQR%41'7K$<$,&^&,]YM+P[!)/#/\IU \ M!5J?>.<$+>XX$LH?T0[.&$U6D-NR+"<U@2IXP;\N>3 M7.$:@5/BQQ;;"]X8S)_"EF0A_6Z4DZ_T9H/,X;#U,I3Z%M PXRP+PY>$VRCN MFBUJ1;D3[18"(:YI:%OZ^JLBCN)O'@!\2 >5LPB?(^8SG?\WZHHBG!C!+16#$\ED"V'6"W%>(;T&'3*;A0^ MH8*_._@\7==JZ\L-UWH0Z,VQM@#,+4<,DEYM<2\:0'MH56_$I'"4=IP]OS9^%V7*-K^4&2\/S M/)N1&=YOPX?3G7\SK;6#7WUSAR>O-#P!XQNMW?3!&QP>T5=_ E!+ P04 M" #8,U]7>A^WZQ$, Z)@ &0 'AL+W=O< I"B:LITTW3[8X@4X]SOX;*?T1[,6HF:?-V5EGD_6=;U]&RFEP^HV?7^O*9:NI25N):,]-L M-ESO7XA2[9Y/PDG[X)U?&_%2E"4" C(^ M.9B3#B5N[%^WT'\BWH&7!3?BI2I_ET6]?CZ935@AEKPIZW=J]XMP_*0(+U>E MH?]L9]B^<3\!$C](V87/[P79@%3^^@/.DH3^Z"_E7*NA/B.+WWH6&T M@%V7O#+LWVM!BWBU_^&[611.GQIF","" / =UX5A]9K7X,0&G(7)BN5]L,*! MS17XNJF96EH(3&WQO?%P8ZUE7@,\^Z:I9&W8V>3=^P]F;,H#Z@0S:!9K519"&R2A/C#&^':KU0T LP]7E?@,/WJK MM.4 H3BIO-W:: ,$_0J45!AT2%3L##>CC*+@*6W IW0?/@6"4)#=8V1F@Q0[ M\0U%PLX6JEZ#)%L,B*]2U>-/#2_E4@*I;B4(Q^Y$'D0N+<$:@Q4(%J5AI4>" M\=F'+:L5FWEA$'A!$%BI$'Y0V09V6F!GIEG\ 8$5%_/B#XA3Y#J@6612W.!- M1[/9EL0*8 &B!:0$N9$EUW:=.8=XMF<+P:0Q#1"^;;1I>&5A6_97X)VHRP9" MBB84G:1(DV YE0OS.PERP1569[QL==GM\$!0;-EH(L4AV,FR1!(VO! ]+*.J M#D+VLZB$!M!'*K>P.3 *LBC0](%A-$2.I!]K'V#TM6]5C#>Z<#J M?G^ N/ V#+P,_F:G3:)O$:>UYACO^.U(LA%B)[1@4#L \54AJQ6R!8C04V.; M )RQ &JPLU*NY*(4#/R>K(=\?\1(F 1;;/)U2QDP@'N60@)]'LMQ7UFBTVAK MHCL)\:A&'ZRL%*WA HT56^PA8@F=PY+S(_&^Y%KO(4QH1BG&'*1\15Q (E,+ M>.M2F=>28#H*N(MW!U=I:2"G7VJUN5>.:WXC7*0%PL$CHS#Q@BAA0_(@K')I M4,BD_Z9>*RW_Q""G:K #IV92R[&#C@F8@D;L,)UDN!]3U[R +4&<]N,,O^$0 M&5J5D@$Y=!A!K*%M,>_XSB/:>(@:;>V-0@"O.BVQ+:0"L!:,C4@H4@$5Z$<'@&S&(]ET:.S)OD *NL2058!0D^I4-!.6>W0C,7"C=I6I0.EH(][_ONS9A M+E4)U3")GIBU)3$(WXP2T@_]MHZ5]9XDA*LKR.F/-UAS8=:0JF V# RD_\2I MG?U.E:HH'O>NKE8K+5;(U=M;SO>CR,4& <464@1J2[(I>\32T$\S]K,3>^C% M\Y0E4S^90Z5@10^>$T?I.8MC?S9E/[4NAWX&65]J7)!FT3E+I_XT'$$^8 )0 MSZ>I11W.6>:',=R$4T"=M4A)HN.[4R^<1; !B 0&$I^XP-W36:&;JSV<'LO ]Y"A>%)(4Z"RPQ=/6.'W?L)C!JAED M =KD3+2ICK<=2*N9P9"X5?*0AY=-W6CA=ZS=9@B\)N=EWI04Y194Z91[$C_X MCZGEAEZX0 7 (&: D3@6AM38(F;)I;:.-5*WM#X*% J>=Q9+Q:=U7LP !\Q- M%Z ./K-KS18BG8;.$?0"#F01/ $2P.>L/[@>A+WI/*1],M1A>Q\Y"[_O_3MI M/CY>HG.3/!(_9-^SR)_"_\0/Z!J?O&H%7H#+%N"6;"]%6;# 3W$I_"3V9TX_ M2=+?$:-$\597.BL MUBK?/RF.G]LH:KT@;[1&N(-5T@QMM:JPVOVSM9".6;D1 M-@3=BA"DGL>4MA\4GHI&MU95'^*)[;*&Z=:,YUL;R1Y%X-TI;7P4SOPPI&86 MY0*"0(,GF_L+V-J(9+$!BEEHL46AGP3'V*QP;'D':0*0&IF?E(7HA\<(W+%BO MG#>_46WA<:I"#;THFT,)EH7^-.DJU&DR8TGF0['WF]U^E@8!),RYG\0GBM-9 M=LZRP,_26TB'>@V]) ZQ!$S\Z7Q0".%ZDH7$&&A[.LQ,%/A=!E$+'+^1/%US MXA+,DG[\W M2$+U'T866SJ#HFLD(&AAUX:SSF-2-Q$C$5 :+(NP(VUC0)*Q)/%G61L"J(R)GG:_HV%@ MN.B^6##%V)-&/ES>#@37;23H5;.'-@/LWKOJ4KO)(7A 52- MBRN_G8X*C*HX;R43;STL#U$;NU!!7* MXSG7 H?A'=G4)_+;%8]+0$![Y =VD-)O#/H&-RK/=@S?L@ABCA0V\^#>_K&AZ89=O2"(RB5_- EQ:D\=U-TS\E MFT%W$X-L>MU>Y(7Q".%?)IM!V0@5?CCORR:99V.R>7/"Z6ALQK>RQJ'5R=H! M:+M5R/BC!9>K\VVY=:\:%GM$3H^0__'IJ^LJ7H+'J5+:V/4>#Q(WA C)A3WN M..J,Z@;5&!"'.?\_35Y?*ON%@,:!$!14CU@2XX% DM'('71",WTPXQB+6/#D M?.U!, 75J.TA*8AJ!:0)"O2QEZ1SEGA1,&?@8UDZQ9\TF+'WHBQAA=>>\[B$ M4D#[)FV*OA$X^Y^&\#^;S1ETU7&6T(\] B"7Q0NR3Z23/,Q>@#FQL<]"+GK? M\VR$7M%72SC>:ZK:?MK3/>T^C+JRWP,=EMNOJEYS#8P:: Z7L#7PI^G$'OZW M-[7:TM=!"U77:D.7:\$+H7$!O%\J5;"@ &0 'AL+W=OQN4K2'((O=ICT4/=#2V"),D0I)V7%_?8>D+5NH MUVVS!\M\S'S\YD7.;*?TQE2(%K[60IIY5%G;W":)*2JLF1FH!B7MK)2NF:6I M7B>FTI(X0""^L0&/UM\0&%<$!$X\L!,^J.=(KGXR/Z3]YVLF7)##XH M\3LO;36/;B(H<<5:89_4[F<\V#-V>(42QG]A%V3S<01%:ZRJ#\K$H.8R_+.O M!S^<*=RD+RCD!X7<\PX'>9;OF66+F58[T$Z:T-S F^JUB1R7+BC/5M,N)SV[ M>+:JV, 3-JTN*K(.'K5::U;/$DOH3B8I#DCW 2E_ >D=?%325@8^R!++OGY" MK#IJ^9':?7X5\%-A!Y!F,>1I/KR"-^Q,'7J\X0MX'[ZTW.[AC[NEL9JRX<]+ M-@:(T64(5R&WIF$%SB,J 8-ZB]'B^^^R2?KC%8*CCN#H&OK_BL6W(7V2\)'1 M$F2Y=VL:@ZT0'E3=,+G_P<"]8KH$M8+W7%/=*&V M;92FO^%I9?5)U 2>T/% M'Z?AY^9]M$+5-56><6P&\)GR0I,$-P<2C@ T@5D,G$JT++FO5:O.SC&4[R6Z M_49SI6&/3)L>\3/A$K)X,IUZ/J9B%*08F"SIUZ$S >.S?0)B%G:HL0=#QQ&_ MS"L;M%9T:^0Z4F!DG;'>!UDV[7Q0MIK+M22Q1J EJ9/U[HOARE M+.]%P;O4*DO'=XZ=9/'P9OH:O_;X&5;C19+_(?7/IO=HW?Q9/1 MM^7+X3J,02#;.DU&Q[O'UXV73#!9A,(7Z4,^<>!3>1R47K8_'2JL:D*I"[1%#T@';47:32IA16 J, UM@6\8% M6W)!5WVH_(*9BJRBRY\)*Z5Y;24$JM M2#4=3*E7T:&;"1.K&M]!+)6E?L0/*VH 43L!VE\I98\3=T#74B[^!E!+ P04 M " #8,U]7"4=A/T % _#@ &0 'AL+W=O@<&6I3<,=#LUJ:EL#O/)"C9QF27(\;;A0T?S/?%[@"*0D(:7SN,:-!)0F. MOS?HOWO;T98%MW"EY3^B2?=.K_^ WIXCPBNUM/Z7K/(]8 MV5FGFUX8&31"A7]^U_MA)#!+OB.0]0*9YQT4>9;7W/'YN=%K9F@WHM&'-]5+ M(SFA*"BWSN"J0#DWOU&E;H"]YW=@SZ<.$6E^6O;2ET$Z^X[T*7NCE:LM^TU5 M4#V4GR*3@4ZVH7.9[07\JW03EJ0QRY(LWX.7#^;E'B]_U#QV+6PIM>T,L']? M+ZPSF!#_[3(Y(!:[$:E(7MF6EW 18158,%\@FK]XEAXG9WOX%@/?8A_ZH^%X MNC1[7P.[TDW+U?TOEL%R";X F$-?&.Z K;EE>7+ N*I8>GS L,*90R%7&X## MA@+KUQ1JZ8>#(6R.G8 MF-1VN1*8"094B2F"_L3F12[#]L@4'@$5E*@=Y7JU.]*&PKC0&*P?R16_^:OX M/HRH ;2-)'MB6+T&>COA#L\D3])QK($5>U[$27X4)TGB@9_/BL0/?FY*>]$= M=!:@,/7PV B-G80^,:B[_A=J%)V MM/ R_?7KF OU@!\F$C)+BMPSJSHD9 2>W (]T:<')K.7Q*T^/T(_M R/6\K1 M0!31*ZI)\L9<9$=I')HO3T]G@)EY]Q./1"Q.=$HS# M.PAU 3"^<% :RQ,\=H[8BHS?!WXR E=60=7C?*3X=TRZE\!\+=G,SYH=3KRWM7ZNTCF,>S+-31-NV>Y("0 M2(]E=A87QVDH4SP@J Q':HQNODU1[]D^XRUA;-+]B?F5I\=>'_H9, L64MC: MYXQ'87R%Z6O=_D3VP2T>598G)T\-[=FXZ[YX-LO2DS,[D"*'BW"K\*D>]U$D M?ZV,MM2<'!XGR)NH(2J73M ^NET\3T_CXBBT8NY=]DU_7=>BK/WF4J*18BFH MY5L*H%:'98<>P *4@B^$% Y/_9OEN+ &PN2!5EL1CODU4L)WAB5'(MZFJ?IC M,\1.BD8X'G:/O+1Q_A8*W2HP"C$A6-BVN+7N9(6M?Y,1E7? UE=#/$8;L3EL M#MMEY^@F&@IFLNOF.!U=ZALP*_]T03?I3KEPOQ]FA]?1Z_ HV&X/3ZLWW*PP MMYB$)8HFDY.CB)GP7 D#IUO_1,!S'1\<_K/&%QX8VH#K2ZW=9D *AC?C_']0 M2P,$% @ V#-?5Q?6RTJO P HPH !D !X;"]W;W)K&ULU59+;^,V$/XK Q4H6D"Q7GZFMH%XFV)[V*T1[^-0]$!+(XN( M1&I)*D[^?8>4+#M9QVVWE_9@DD-ROOEFAAK/?"_5O2X0#3Q6I= +KS"FO@X" MG198,3V0-0HZR:6JF"%1[0)=*V294ZK*( [#<5 Q+KSEW.VMU7(N&U-R@6L% MNJDJIIY66,K]PHN\P\8=WQ7&;@3+>)>,5"LVE (7YPKN) MKE=#>]]=^,1QKT_68#W92GEOA5^SA1=:0EAB:BP"H^D!WV!96B"B\:7#]'J3 M5O%T?4#_Q?E.OFR9QC>R_,PS4RR\J0<9YJPIS9WI VVLBJ4R8&%1?MS!Z[.)PH3%]3B#N%V/%N#3F6/S/#EG,E]Z#L;4*S"^>J MTR9R7-BD;(RB4TYZ9OG9T<;LZN8!%64!-@53J.>!(7![)4@[H%4+%+\"-(-W M4IA"PZW(,'NN'Q"IGEE\8+:*+P+^EIH!A)$/<1@G%_"2WM/$X26OX-TR);C8 M:5BC:KV$WV^VVBAZ&'^<\[>%&YZ'LQ_+M:Y9B@N/O@:-Z@&]Y???1>/PIPMD MASW9X27T?Y*6BT#G:;Z"#OT^Z_9UN[]'"E;*RK0I&1T#TY#+DKYG#3]P ::0 MC68BTS]>PX="(5Y5)T\!WA.EYSN46KFE+'3)[>78R?%?GJ^8YBFQ>L$VE169 M.9"F"J0-L:*<0S2)_6@\HSGQX]'8R<-PZN3Q,(3;/*-K1. 7QIN MGH#MF,*AK7?IOA4UY9H^QD"J1?GU)G2O3YA!H5EQ0>/)=6GXJVKM&5 MW?+)[VA&XTE/FI(Q:R7Z=W&V-*NP1Z6G9=/]$F?;F):OD(;NI&5CC;MW>'RE MMN*?IE.@NRM;^#9(L,64-=IZB$\M)!.&7QV4!G"'5!]X:M^\BR(T@AN;!L-* M&YYC_*/_0>S#8^3C\7\Y[.\EK.\V'[O"@X__PM;!PV\/)!6[$S+6^6=L+^5V MT&D>WTOR]Y\)?.,S:=UYX0UE\]R_4G#2.%2H=JX]TL2J$:;M(?K=O@.[:1N/ MX_6V?7O'U(Y3B2HQ)]5P,!EYH-J6J!6,K%T;LI6&FAJW+*B+1&4OT'DNI3D( MUD#?ER[_!%!+ P04 " #8,U]7[,W7!G8% #M#0 &0 'AL+W=OI*(B_N MZDJ[\U'I??-Z,G%92;5T!Z8AC5\*8VOI\6E7$]=8DGE0JJM)FB3'DUHJ/5J< MA;5/=G%F6E\I39^L<&U=2[NYI,JLST?34;_P6:U*SPN3Q5DC5W1-_DOSR>)K MLK62JYJT4T8+2\7YZ&+Z^G+&\D'@3T5K-W@7',G2F*_\\3X_'R4,B"K*/%N0 M>-S2&ZHJ-@08-YW-T=8E*P[?>^OO0NR(92D=O3'57RKWY?GH9"1R*F1;^<]F M_1MU\1RQO1@HG"1[%-).(0VXHZ. M\JWTZ\+234O:B_>>:C?FQ4OC2_'W MQ=)Y"[+\\U &HH/9PPZX@5Z[1F9T/D*'.+*W-%J\>#8]3DX?@3_;PI\]9OW' M2O4?38DK+3ZTFL0\9#T="U^2>&/J1NK-BVPR%!O3A4(J=L" M+ZTE*^BN(:M(9Y0+*0JV*KU0'GJ51,*51OISH\DI>2#^@/T@DQ/R;C9!R:F5 M5H7*6%S6IL7#%("QTG3WTJPUA.";I?"F]"WJ:. 2991.K-'B_,R &EZ"QZV$ MB-K+30CLX0!\";QKBIC@0WIH8/YU !"^R=L,LY#!0VH-9]KL@,YEC9$FO!GF M[R?7J_(\ OU4@_$&CE\K)"M(YO#%H?HN*SOY%R5'AR$'.&L%KCX2@L'$Q*"E M@<>QX"'M\2>!3RR;D3;P+J0>:X8$7IQ+_RBM7!@,?.\6G%6K')?QR+'#+=. M%=&]:YNF @]+!!5Q@WS\&.0YD^A(Q'4@WK8V8(&B1D.\K'E<"2:K@2(/+8&1 M8Y;PFCY ?^0D,S8/!-78+BMN(DM5H$=7ZBJ,[O*NG:E4'H!<>SRX74(ZKA"6 M9)MNEWTP2F#($#>HD!%%J@?T#* RSD3O$>JS"4DP? M5VIE.9PN_"U%NFJPV(,<">.EY[@ED/6^J;:(!]& V!DYU\\&$&6EN'\>J]0/ M,;[;9OZX\B:,?6K Q$O0P3-WOT_'4T@6H3#Q@ ME6+9.N3 L2R*:-O(R:R2J@Z%!,[YT=-Q?I.X/5 Q#;G'. ^\%VI 1+\)M)JO M IV#'MASOTMM!@.@HQ4:OK4VFI-ALE=^N$WL-@%OP-B>XB80<'PS= >1=I0C M]AA8?=@W]+;?XP;\O[3V15SY)M.<'I3%M*MR9],W*)3#D0^TX,U/8TL. MB[DAWK%QMM!>9:IA_4%Z!F2/5<"!0&/G<1G*0?G!0V>YR> (7I-=A8L>&0 MNG@:WZYN[S(7\0A_+QXO0A^E16]CI% !U>1@?C3"YA&ULC59;<^(V%/XK9[R=[6:& MQ<:0"PDP ^RM#]O-)&G[T.F#D ]875GR2G((_?4]DHQ#,B2S+T:7<[[SG:N8 M;+7Y;DM$!P^55'::E,[5EVEJ>8D5LWU=HZ*;M385<[0UF]36!ED1E"J9YEEV MEE9,J&0V"6?79C;1C9-"X;4!VU05,[L%2KV=)H-D?W C-J7S!^EL4K,-WJ+[ MH[XVM$L[E$)4J*S0"@RNI\E\<+D8>?D@\*? K3U8@_=DI?5WO_FMF":9)X02 MN?,(C'[N<8E2>B"B\:/%3#J37O%PO4?_%'PG7U;,XE++OT3ARFERD4"!:]9( M=Z.W7[#UY]3C<2UM^,(VRHY(F#?6Z:I5)@:54/&7/;1Q.%"XR%Y0R%N%//". MA@++#\RQV<3H+1@O36A^$5P-VD1.*)^46V?H5I">F]V@=:;AKC%";6!9,K-! M.TD=07N!E+,.?\I.I FY0,H<%S'U=""?0PM_S%4E1H?QS+ +1P.BX =\\ ME[9F'*<)=8=%0]B!+0(1#-[?S)=P*(QH+ M\^*>*4Y*RQT!*W2"6_A,) T7,BJ4,#)5N.8[U\F0?H.\] . M>:FTU)M=Z,C"BWY&ZE&UZ\,G+6G2>#'A;&1I19@ DC"L-XOO*-W-P4Q')=DL."UU80-_B0 VJ/F%7"OO,IUHRU8<[HK7NDNK82F+[AHC_ M?'I"Q$.V=A[S(,QOWUSD@_.KY[!MY4?KD>E+$8TET(-M*7@)PI/FLBFB/QX^ MSZ[FG)N&3KSGRJ(-QX,KT'LNRFHIBF!JP:2O?[CU ]O"N\!7-Y9";4\NJ>GP MO:,W#^ZHFH6*L5F@PK6O94(*T^G)[9(*TL*==I3=/3H[7DCP"XS/1O0]/Z7/ MH)<-Q[!DEC++=O3.>C[C\^$)O#L]HP_=Y^,3:B>#OOCQ@6I';2A(Y C$M84Q M#&"0/3/\K#3(5DA$?D6K/(N?8S,Q/7C&*J0Z]8^UI6)NE(LO6G?:_1^8QV?P M43S^F?A*92ZH&R2N237KGY\F8.(#'3=.U^%17&E'3VQ8EF'L> &Z7VOM]AMO MH/N7-/L?4$L#!!0 ( -@S7U>&#/E!NP, #@( 9 >&PO=V]R:W-H M965TRP5;XH>W0T,[*NE8$^G3KW'<.11V=6IV71?$A;X4RV6(6U^[<8F;[ MH)7!.P>^;UOA'I>H[7:>C;*GA:]JW01>R!>S3JSQ'L,?W9VCK_R 4JL6C5?6 M@,/5/+L:72PG;!\-_E2X]4?OP)E4UG[CCU_K>58P(=0H R,(>FSP&K5F(*+Q ML,?,#B'9\?C]"?VGF#OE4@F/UU;_I>K0S+/S#&I?&"0[EW*"/O%"BRO!%!+&;.;L&Q M-:'Q2TPU>A,Y9;@H]\'1KB*_L+CO*X\//9H GS;TZV=Y(%C>S.4>8ID@RA<@ M/L*M-:'Q\,G46'_OGQ.= Z?RB=.R?!7PBPQ#*$8#*(MR_ K>^)#C..*-?S1' M^/NJ\L%11_QS*MV$-CF-QE-RX3LA<9[1&'AT&\P6[]Z,/A27KW"='+A.7D/_ ML7K\3X@O!DA26Z&#T7E2=0"A0;BV;2?,(XW&0Z\S3 /@A3*[,& MWPC*E'=NK5,!=^3I.NL$#]8 !&@Z#MAPK6TE-'3.;E1-XI':>F+XOB8C#D#32A%VLA%FC4"9H!\P M!8I+(KR7PC= '6*\B*?'$'ZFP\-$98)J.=>HD_))/*^2%,>JTIY*'D1/HH\" ML@X: P/$G=X1!<\FBC2@T%9&5:,(;"$M'8"D95KMA*J'\/LS,=KW@0/)WG$% M@X68XA8=@K$!6!6GJ"A4R[2*.SK161;Q[$>8%&NEC#"2C:DH=*R]5')FR_1L M9'@D0(HM_AMZ;\BI6*W8ICX=ZTB^X5'7CDQ]0SU, M'L[3L2RUB T-L9*UXGXTT>IM,2RF9] 1;NSKE/K!@JK6B4=1:>2VN4&);1R< MQ(!3X2&)GHW55)A(G );%Q7=9\']%CNVZJGO8O$-?+:;/=HTP0U/G1CYT6G> MHEO'.XLGJ#R'U<.U>)5N@V?S=*?>"K=6QM-\KLBU&$[/,G#IGDH?P7;Q M;JALH)LFOC8TR^C8@/97UH:G#PYP^+.P^!=02P,$% @ V#-?5Y^?]!B! M @ N@< !D !X;"]W;W)K&ULK55M;],P$/XK M5I@02%#GK:4K::2UZ00?!M7&X+.77!MKB1ULI]W^/;:3AG9D537V)?&=[WD> MW]FZB[92 5\#TSHJ+DBAMBC66E0"265!9 M8-]U1[@DE#EQ9'U+$4>\5@5EL!1(UF5)Q.,,"KZ=.IZSYW!$)DD>TD6@)PKXYE@)*J$P++FL!Z".ZO4G0N[/WZ Q1AG[DO):$ M93+"2FL;!IRV.K-&QW]&)T!7G*E[O$I_Y1PF_ MIVJ 7.\#\ET_Z#G/_!2X;^%^7SK_I[YXL?I!,8+N%026+WC)*^B[[(8N[*.-W,]]E7Y-LN0UR1:O1'9P)V%W)^$Q]OB;'A*4 MI;SLO8 &.[)8,PLVL3<^]T81WNQ7]M^H(#@?NX=120^7J^?,\#!LT1,V,RI!K.T4D"CE-5/-B^R\W:"YL/WUB7_F3>9>CS_1@ZF9(W_IFZEV M1<2:,HD*6&DI=_!)]TK13(K&4+RRK?".*]U8[3+7PQ6$"=#[*\[5SC "W;B. M_P!02P,$% @ V#-?5RQ2>*TH @ 504 !D !X;"]W;W)K&ULG91-<]L@$(;_"D-G>DJL+SMM74DS=MI.TR"'110T/T M3+8@[$HI54.,#545Z%8!H5[4\" .PYN@(4S@//5S&Y6GLC.<"=@HI+NF(>IE M#5SV&8[P<6++JMJXB2!/6U+! Y@?[4;9*!A=*&M :"8%4E!F>!4MUPN7[Q-^ M,NCUR1BY2G92/KG@CF8X=$# H3#.@=C/'FZ!CH_N7WSM MMI8=T7 K^2]&39WA]QA1*$G'S5;V7^%0CP$!\$L><>-O*4GX@A>:IDCY3+MFYNX$OU:@O'A/M3'HRR MJ\SJ3'YGCY>"0H^*4"8JM%**B KLL1N=!L;NX/*"XN"V'MSB"VX)NI?"U!I] M%A3HW_K DHUX\1%O'4\:?B_,#(71%8K#.)GP2\9R$^^77/ [5^85VKV@.T'9 MGM&.\'-5#Z;S\Z:N;Y:Z)05DV#:&!K4'G+]]$]V$'R>0YR/R?,H]_R;%];;C M@*)PM[B.3M'1BLK6_'O0 _*T:4FXA@FXQ0BW^&^X1U#VPI(+?-.^%_F"DZO> M@*I\0VM4R$Z8X=:/L^.;L1I:Y4_Z\.#<$U4QH1&'TDK#V3N+I(8F'@(C6]\X M.VEL&_IA;=\]4"[!KI=2FF/@-AA?TOP54$L#!!0 ( -@S7U<%;_Q/<00 M )\* 9 >&PO=V]R:W-H965T6UKU.Y1,5:B=,AHLYI-D-KBZ'K%],/A=X=;M/0,K61GSB1?O MLTF2,B$L47I&$/2WP1LL2P8B&I];S*0[DAWWGW?H=T$[:5D)AS>F_$-EOI@D MEPEDF(NF] NS_1E;/>>,)TWIPB]LH^WY* '9.&^JUID85$K'?_'8QF'/X3)] MP6'8.@P#[WA08'DKO)B.K=F"96M"XX<@-7@3.:4Y*4MO:5>1GY\N8S+ Y+!4 M:ZUR)87V,)/2--HKO8:Y*954Z.!H]W0\[GLZF@'ZLCWF.AXS?.&8'^"#T;YP M\$YGF'WIWR?*'>_ACO?U\%7 >^E[D Y.8)@.SU[!.^OB4MU\]^G*U4+B)*%F<6@WF$R__69PD?[X"MM1QW;T&OKT-ZKV MN36:*$ND%O'N$,/_BK&?]:47.A,V<_!09\(C',V6#\<<[?0T'9U LL <+9(K M+'B;EM0DCR^ KNA%2E\B*T'Q68+Q#>Y3GUH^/E800RO5-::*E$ M2>]J8YE/7\+@:6DX46N).5MVH:GZ<7;H&_9Q!+%5M>RT8Y&Z"W; MTZO.-(&/M"LHOEF,L=)L[Q#H3 >BKLLG\ 9$60+M*\^%YPOAH1 ;!$E=PQ7H M3J# ;,WL+98AHJY0M8O:#"%:($/M1!AV+83M=/SZ_OI^ <:2>31^WK),&1]K M2@MF3&6%D"G')RO=T*L52M&X(.L?7C8$ID=JU\BH)R$405AMS49EY%0S'XH3 MGY"I$ *FC(\2ZT@U9UH'3866@SN*4 MI*:-]$+ 7\!\5"X$6H0._0HBEI70L52?J$;)IXQ!W 7J4,9#BDE)=+<<7[;E M>BNL:=9%"!%RFF([':+7^Y=6(E@,&:7/?#QQOZ>BH@_"R@(&PR G[4[_2FB/ M+#5=2O@@$)D)A=@U-0^I7X1N^,/9?H)BD6D:X]0J+HX$E TGZ'Z#5O/E8#?8 M2%>8*T?+^[O%<2LKBW&CULM"=83V%U0$H>I*4%7-)6*"9K@QM-1/WU%HNV'I M:-*V@YRY< ^7QA$%USOTR>GO71HJM.MP-7(0>BW>'[JWW>UK%B\=S^;QZD91 MI6PY*#$GU[3W_7D"-EZ'XL*;.EQ!5L;3A28\%G2#1,L&M)\;XW<+/J"[DT[_ M!E!+ P04 " #8,U]7XR504S<# E!P &0 'AL+W=OG/&E6 :1(X0"<^L0&/UM\1*%<$!$X^> &?B4 M+G"\?D+_U&DG+1DS>*G$'[RPU3(X"Z# DK7"WJK=9QSTG#B\7 G3_<*N]YV= M!I"WQJIZ""8&-9?]/_LUW,,HX"QZ(2 9 I*.=Y^H8_F!6;9::+4#[;P)S2TZ MJ5TTD>/2/LTR@.5J$EK(XWS ? M$-<]8O("XCE<*6DK Q]E@<7O\2&Q\Q23)XKKY"#@=6Z/(8HGD$3)] #>U$N> M=GC3_Y;\@9M<**?:P)\7F;&:JN2O?9I[R'0_I.NO,J MGD7O#Q!./>'T$/KJPABD)V&R@*^<95QPRXGP\%X%, LC3:[4X1;S5FLN-[!F MAIM]B@[FW*_HOD(HE:!&=LC65,LE95:MH4SF: [?6F4)[T;S MG-+1X1W?2%[RG$D+U\11PW>I,B>I$_!%-JTK^*^X10'3(^BO>^[*&!^IU_0# MS48NJ3C:OC=>0Y+&D]-X1JLWK\Z2.'D_6ETJW2C-+$*FB)'?GZ;GDS0Z\?:] M[J0_ EV->':;$7*:>+,C\RYC^0-I,NY"^FOTJ*>3Z"3VYIW:HJ9))/^5/)Z< MIY&W/N9*JIKG4&&Q<4^J=TP70+M= XS"SF=^/2J]^?] 2,[\>E\KA*/15:/> M= /:$% K;3_%_*[_!ESTH^_9O?^ 7#&]H6<"@26%1L>G)P'H?BCWAE5--P@S M96FL=LN*OF.HG0.=EXHJ9S!< O]E7/T#4$L#!!0 ( -@S7U=Q13^TK08 M /(2 9 >&PO=V]R:W-H965TDDV6_?N=0%SN*HW8%]F+S M=F[D]QT>\>S.5)_M1FM'_B[RTIZ/-LYM3V#&ET;GJ#.)@H?M5OL; M'SO$,D^MOC+Y[]G2;ZCN?M)-_%(U+&\D16>RL M,T4C#!X465G_IW\W^W @$ =/"/!&@'N_:T/>RQ]3EUZ<5>:.5+@:M&'#A^JE MP;FLQ$.Y=A7,9B#G+JY2NZ$$?\GK+[OL-LUUZ2PE:;DD/Y>WVKH"!\CX)IWG MVD[.9@ZLHNQLT5AX55O@3UA(R#M3NHTEK\NE7CZ4GX&WGGWAP!;X>/N[0/Z\G%M7 7#^.A9VK54"S/(C:V@*M MZ;ZU[ R"P/4M4XOT46WT61E!W<"6$RI%$LL14'-)$>7/H>&%%]A@R6E7!>N]H\%XQ&3!'!).F. MN.\U"1-)98R#7IH$ O"%8V3@-Q >K2[ZI[,LSP'3ZB0H $,A)Q9I+&,R;M=F2VR;9KWIA4'IW=5!=$\V'W&(LI$ M1#B+:03[U ^,AS >Q02"ID(\\EDFE,,^"T$Y$T]''=)$1?@GP^1Q: KVE2;@ MX'M33A='G(0-H4G"B)""@L-PK+&05($N:,$8EP$98(OLV"('V7)=WSB(P\O; M-,LQE4WA0IM> PJ^QI!!U<<9]@_L&G(!"9R6]_X4HY>6I _\ MLNC7X4:EGN=]FO1I=%F8RH&))7E;&6N;WS=I5I%/:;[3+5!.'Z$!^,3@".(8 M6BVR3L@8SE6QB9^M:? T_!F/.\FQ$).&$8^ID!RN ^4U._K8830 /'0+PWCB MF7( I,=!<,D .Y(D9,PXC96:="CON:$"&D=LKYY1&0KSJ$*\&$5^?_&\E MA)U[0/P"?0@!<^ >#Q906GT')89M?P?ZU][=W=[=?._N"MV]W;O[%:8 )=*R MKXILC (6Y]!J41 V**Z0@)H$(;DU6$RR9 M/.)(RX[NKJ,)7$5CQF#M81L"3L!($&(<>!_ZV+B4P+PVX"20GD0BIJ&*#Y@U M0*>HHU,T".F/[4F\A<\<,D9,3 C X2L\&5;Z[3SYH65(AX@U^%'3HV&**;V MIP, ?*GG[O"(D#@X[S:5UM,"D>JE2_"IZ6YUE1DX$XUE^B.&X.)VC#U!&)KK!#3)[7801?8.(2RN$-9/ B(UZN5]A^IY%WJ\.3N"7S3 M:?M]= MP IYO+R7- P4%NL!?'-P1F-(G%B"\WV9T:33X4\(J%PB@#FX)Z$':2W:UTN* MJCAL<^K0AP06&OW<^C#'GG0?"-C"ZP(C3& RPDDHD%2"6P ED5(X$OG29+A( MF1V\0Q2Z6OO7%OP0W)6N?I+H1KL'GI=6:V1?KE<@&KS ]Y.J M?F&I.\YL_:O&W#AG"M_&PO=V]R:W-H965TVTD"D/P@(9@&P_3'MSDMK%P[,QV*/S[72=MUDFE M>XFOK^\Y/C?V\6RCS;,M$!V\EE+9>5 X5TW#T&8%EMR>ZPH5K:RT*;FCJ5F' MMC+(\P94RI!%T3 LN5!!.FMR]R:=Z=I)H?#>@*W+DINW!4J]F0=QL$L\B'7A M?"),9Q5?XR.Z[]6]H5G8L>2B1&6%5F!P-0\NXNFB[^N;@A\"-W8O!M_)4NMG M/[G-YT'D!:'$S'D&3L,+7J*4GHAD_-YR!MV6'K@?[]BOF]ZIER6W>*GED\A= M,0_& >2XXK5T#WIS@]M^!IXOT](V7]BTM0D+(*NMT^463 I*H=J1OV[_PQY@ M'+T#8%L :W2W&S4JK[CCZX=E G=:N<+"%Y5C_B\^)$6=++:3M6!' M";]F[ARBN 8 @ A@4 !D M !X;"]W;W)K&UL?91M:]LP$,>_RN&-L8*I'^(\ M+@DD[ M(UW"G1;54R]KE'([<*+O/W"/=^4QBX$RWG#-OB YEMSI\@+ M>DK.*ZPUES4H+!;>*IJM$QOO KYSW.H#&VPEJ91/UOF:+[S0"D*!F;$$1J]G MO$ A+(AD_-DQO?Y(FWAH[^E7KG:J)64:+Z3XP7-3+KR)!SD6K!7F7FZ_X*Z> MH>5E4FCWA&T7FPP]R%IM9+5+)@45K[LW>]E]AX.$2?A&0KQ+B)WN[B"G\I(9 MMIPKN05EHXEF#5>JRR9QO+:7\F 4[7+*,\MKI)(T?'QDJ4!]-@\,0>U6D.T MZPX0OP&8PHVL3:GAT3H^";S-S#F$D0]Q& ].\ 9]A0/' M&YRN\-H') M*3H)U!K1A]L&%3.\WH"3[,,U9RD7W+SZ<,-,J\@ZIOTD_;CVJY9P"+(_4=@3 M(6.ZA(:]4M,9#8PBF(9""NI<^D5X#::4K69UKL]F\!.9ZBX=+C'#*D4% [JV M527;VL ]VI&0TZ(LH. Z8\+=*+R'V!]&H742B")_.''V$*;^:#RVY@C&_G@Z MM>:8S'@067,"(W\ZC>&Q1)H^A2%R,O*3."+B-/9C0AZ[C."@-RI4&S_=NX/G1:OTO:D0 M+3S60IIE4%F[G8>AR2JLF3E36Y1T4BA=,TNA+D.SU5@S+H-T MX?>N=;I0C15' MDO,:I>%*@L9B&:S&\_7$Y?N$[QQ;L[<&U\E&J7L77.;+('*"4&!F'0.CUP-^ M0"$<$<<#;]K%3>P962MC+P4>:8_XT/294*;1"#]7&V,U_2F_#HVAJS(Y7,6Y9VZV M+,-E0/8PJ!\P2-^\&I]'[X_T,!EZF!QC3V_)C7E#HE4!NWX.:3S*'0C,,]7]2H2^]^ YEJI.TL,NP.%\RJ\]5S>G<[73%=%4G87N +#M9O^ 5!+ P04 M " #8,U]7V#LC?Y8# "&" &0 'AL+W=O;4F9;?]G.W>CY5G15[D&%->N$O5/;WW&GIR=8*F'Z?]@.ON/"@[(S M5K6[8&+0\AT0]RQMFV7RJU1:T\R8T9_12^V@B MQZ7;E'NKZ2VG.#M_+2V3:[X2" MCT!H8O6,T,A?3P!*^\PK*'=9RP(J?P2K@ MC9*V,?!"5E@]C@^(UX%WC,\"_E':2P@C'^(P3L[@)0>Q28^7/(/W2JEJ MRX4 )BMXJOR&FU(HTVF$OQG1.#^C-Z M\U]^BB;A;VDU%=EY3E&7D-DG^H^D&2VR=J&10%3]6%?E9'O5D8C^-4CA3E^-#78Y_O"Y] M>-E9=ZYVE=4+AA*=I3F^D#&LO;?J?J@0([IH #A6$3W/ZI M$R6_I36EWU#HYDF9_X5,#U?>XV4GK9VT<(>N-U8T2?1JNF*8V-=9%A;.3"'V M)S1!YIC,) R=.7&[3_M%9D:FJQDR6H;@Z/>0.6V M[CN@.\;$;6@3A]E#DUT,O>6;^]"AWS"]YM* P)I"P\N,=DD/76\86+7I.\U* M6:KMWFSH0P&U\Z]02P,$% @ V#-?5Q?#-?.8 @ MP@4 !D !X;"]W;W)K&UL?53;;MLP#/T5PAN& M%0AJQTEZR1(#3;MB>R@:M-WZ,.Q!L6E;J"QYDERW?S]*=MQL2/-BD1)Y>&A> M%JW23Z9$M/!2"6F606EM/0]#DY98,7.L:I3TDBM=,4NJ+D)3:V29=ZI$&$?1 M25@Q+H-DX>_6.EFHQ@HN<:W!-%7%].L*A6J7P3C87MSQHK3N(DP6-2OP'NV/ M>JU)"P>4C%[8,(D<(!:;6 M(3 ZGO$2A7! 1.-/CQD,(9WCKKQ%O_:Y4RX;9O!2B4>>V7(9G 608]4 M^PW[?&8.+U7"^"^TG>TT#B!MC%55[TP,*BZ[D[WT_V''X2QZQR'N'6+/NPOD M65XQRY*%5BUH9TUH3O"I>F\BQZ4KRKW5],K)SR:/3&LF[2O<;@0OF/M3!CX_ ML(U <[0(+85PAF':PZTZN/@=N'.X4=*6!K[*#+-__4.B-O"+M_Q6\4' V]0> M0S0>01S%DP-XDR'?B<>;O(.WUBIK4@M]WAP-7'&3"F4:3?*OBXVQFEKE][[< M.^CI?F@W/G-3LQ27 TVFAJB08L:@1G(E:"IIH;QMJHQ3&;F: XK)IA,O8G* MX0I3K#:H8=+5,8:/,!U-3F= U7CFQO<<[9=M*%<4;DR#&62-YK+P/&K47&4P M'IT2P'4C'_U'AAI*.2Y]2Q&5R>@LFL&^$H4["U!E/FN=!W9YBIS4DOZ&T)G^4JM4SH MSX[78H5SM%_7UYI6_49*(G,LC%0%:%R>]$Z#H[.(^1W#-XD;TWH']F2AU'=> MO$M.>CX;A!G&EB4(^KO!<\PR%D1F_%O+[#4J>6/[?2O]TOE.OBR$P7.5_2D3 MFY[T)CU(<"G*S'Y6FRNL_1FQO%AEQCUA4_/Z/8A+8U5>;R8+#( MP+O"6%U2P*V!@R]BD:$Y/.Y;4L*L_;@6>%8)#!\1.(4/JK"I@3=%@LGN_CX9 MUU@8;BT\"SL%?HKM*_ ##T(_''3(&S0>#YR\P<]Y+(H$KC!9R6(%IPP5:24: MN) FSI0I-<+?IPMB)QC]LR\JE=+A?J5<6D=F+6(\Z5'M&-0WV)N]?!&,_=<= M+@T;EX9=TF>?2FLL.<"V$U8W0B=P3EE@8PVX5.XSN5/H?I._I$B2\[4H[B 5 M"5A:+U5&I.)C F2:,FQ2N54G@'Q"-W/.FHS$]V0SR;1S N2A$PE)KUP)O M//+I&88C>D8#]QY-8+Z1QL"E%D7\@\.!%X2.+YA !]Y'#=Y'G7B?T]&4E!F" M6L(CY4Q8FUN" :^8[5(69)@DU%PK(QE 'EP*J>&;R,J]U=%IPO[J>%=4IV1U M8%$R7"6X&F%5-ZR*C6%*=ZUL"+STJTKKQ](Y-0;M#O;?2[&0F;1W.]0SD9'7 MV/)T'VGN3O^GR_&Y?+]0DV_(=97+&"BQ*]P3D&N-:R$3P%L:1PQ6_5I1(#6= MDMPE+,FFH!@JVF Z=L5,?3S6);8VT;=P0L]A-.W"X;C!X;B[[RZ7I-*Z(\,I MWX>C3A&/=]G[KFJY?X/[RLAF\*RTHEH3U3%UQ^$"D64TC32U4 >#HY35T.#C M;)/*.(4-ZD8@A8>'(R@HM33>2,-+Z]I\850F$Y>W+6HKC'1>)A$WP6TT>B52RLNK;N/E4M.W76VB7K[+'O M55SI)_K]Z3&_W_\EU8B_YZUI%SZ2;[N4A^C:>_;J9OA!Z!6[E.&2MOJO M(CJ:=77;JA96K=T-9Z$LW9?<:TH75-3,0-^72MGM@A4T5][9_U!+ P04 M" #8,U]7]':E8A(HD)2OO3K M.Y2TRMK=K('T]K)+D<,S9\@SH]'QG52?=(EHX+ZN>R*XUIC^9SG958<_U: MMMC0REJJFAMZ5,5].9NYL,W$EBM+8B?GBN.4%7J/YI;U4]#2?4')18Z.%;$#A^F2V=(]. M8VO?&_PJ\$YOC<%&LI+RDWUXEY_,'$L(*\R,1>#T=XMG6%46B&A\'C%GDTN[ M<7N\0?^ACYUB67&-9[+Z*')3GLR2&>2XYEUEKN3=CSC&$UJ\3%:Z_X6[P3:, M9Y!UVLAZW$P,:M$,__Q^/(>M#8GSE0W>N,'K>0^.>I;GW/#%L9)WH*PUH=E! M'VJ_F\B)QE[*M5&T*FB?65SA+38=PA5FLFA$?U('-WQ5H3X\GAOR8.WFV8AV M.J!Y7T%+X;UL3*GAHLDQ?[Q_3LPF>MZ&WJFW%_!#9EZ#XS+P',_?@^=/X?H] MGO],N&LE:S@CKHID04=N2CCK#QL5_+9(+ M-4[4^F3*H6MIU1!\-H;QO89,=G0S#R#7D,M:9(*\'0AK)CO-FUP?'L%-J1!? MU5MR@Y\IDL_VS]^SZDOB(C&OX#A*'N6%$@RAD21#3P M\ MYD3]* F8$\9PT2FJEA"Z+/%B"!*6^@ZX4<)"+P4W]ED8N?"68J>;@[-2-!S\ M@ 5)"%'$@HAL_90E?@QNZM.T"Q_H8!0LM2!#A\6Q3ZZ83_9)RH(@ -<-61@F M1,%-8^8%KB7CI"PB[L0T<%@26X(QX4=$<(\&PTF#X=_5X*62>9<9#715<$T" M$AGN%.)>3_^>$#?3YJ']GW1U;<@;5SFTVT>EQZ.RUQF3W)S CL*$+M:.PI"4 MY]LKCOR8A6D"R[:M2)XVKE>ZQ4RL*;01:5IU=TN#%S"55D2[].($D9$X0 M@>NE)-KTG]!.-&DGVJN=:VHI\HYNC!)[:>^0-YF]3DH&A;DP\)/4&I;V12W, MPR[%[,7_)L78TL,?<-=DMFQ;8O)9;G[HP$*X!S7J"@,&"L)LRFY5,J2H6[/,#@7.J,(.X6[)+ 7_9LED&]8;8J#3<@I ME7)LI1;F/U4#)6"1#;%Z<1+PQH_]'*MAT=)ZM(>FC M)F\+;HJ= %O"4)M0#MR$)4YZ2!M-IQK\ZXG 0\YZH05!0K7--6YW5,;R$U M].[#@Y%MWR^OI*%8^V%)GSNHK &MKZ4TFP?K8/J 6OP)4$L#!!0 ( -@S M7U>#J]TB_ 4 (@0 9 >&PO=V]R:W-H965TUL6 (^M;^7S+Q8-<(2IX+/)27@Q62E5GX[%,5E@P:?$*2]I9 M<%$P14NQ',M*($L-49&/7=L.QP7+RL'TW'R[$=-SOE9Y5N*- +DN"B9VEYCS M[<7 &;0?;K/E2ND/X^EYQ99XA^J^NA&T&G=_8V-/H/DE/)?F%[;-67L R5HJ M7C3$I$&1E?7('IM[> F!VQ"X1N]:D-'R#5-L>B[X%H0^3=STQ)AJJ$FYK-2@ MW"E!NQG1J>F=XLG#Z279E<(5+PAKRP'M>JI6$ZS+%]&OZ,:G9Z>JVNEZZO0P_)LH"VQF!:[M>#S^OL]TS M_+SG;%\Q@8WM-VQ'KJ9@)@0KEVCF?\SF4@GRFS^/&5_S]H_SUK%T)BN6X,6 M@D6BV.!@^NHG)[1?]VCN=YK[?=RG=W4( 5^ 1 ^5@:TF?;Q3.V.Z=O/\=,* M8<%SBM&L7(+2F#>!FOV-$A1M:_=@Y>[53['K1*\E2".95_OH(LG$1)C3)0DX M+;0#0(4BXRF@=@,@$/D5XM' B M$AVV0LV-'J<.1D[L$@$I20;XEK%"4T=Q ZR$#JZ7WWQ%N:9H9 (F;AJV54XL='0+?2); H.+"$)%3LPT*>JQ@)BDZ&@/NM4>1<=>U9EK/ MMRP3\)GE:Y1/@U2VKGDL2/NU,$&J.6\ZSH=!*&'9.#TI@RSI(L]D(+.Q1;JL M_0VNI8GVKV)_VYK*&E/9WM0S^+02V,1UD]CA0Q?I[9>GOMBNW292O[=_F\F' MTP4)JG'U+0=^ =>*Z->W;#/77ZY;QTDI]:247F"789Z";07Z* U^/4S,X/N' M-!M.WI7E.F5Y>M_3)/M9=TZA*."$+G2'3,BACB(*<)\4F= \Z/&ML/.ML#^9 M4Z&5KBD[$)P?>.N\MS2(S*A0>\]]F5'L]67X7C''7Z27I_U?)=S>W9/?)C\$.+DN3GFOPDL&T":&+YWC-)/0Z'$-I6 M&'PC]*E+.B/??JQ"5S_5+!3GIX>^!W:DG2MP+9KV(!UW2,)*0_X6E*E)8?_T4NC+U7K(7"#Y1IU$>;I0LX/3:E$]9.IQ48! M5724D>D)2%8CZOHVU,U6VHH1E20Z$I:D&IE/M^F-?'IP_)%K3\!Q1R&]130$ M=DP^D!,ZRQ$LL22S\YJ6I=369;K1T/VIKMFHY(Q'83P!ETJUT#=#7;JYM-;J M.1Y-0JVG5BVN)[YS/%&-#[K# L72],"28%V7JFX4NZ]=FSVKN\O]\;I'?\\$ M&2HAQP61VE9$]8JH^]YZH7AE>LTY5]2YFND*68I"'Z#]!>>J76@!W9\/TW\ M4$L#!!0 ( -@S7U?6??%+R0( %D& 9 >&PO=V]R:W-H965T%S-G<\0P@8I-H@4)QV< V,&2"D\:O#='J7QO!PO4?_ M:&/'6-94P;5@CV6FB[DS=D@&.:V9OA/-)^CBB0U>*IBR(VE:W7#BD+166E2= M,3*H2M[.]+F[AP.#L7?"(.@, LN[=619?J":)C,I&B*--J*9A0W56B.YDIND MW&N)IR7:Z>31TH;L\BNYYBL*>X#,X"?DWU%?'\ 0F\(#R#%_8AAQ8O/(%W0R4O M^4:1%<@V7/)CL59:8H7\/!9O"Q<=AS.O9JJV-(6Y@\]"@=R!D[Q]XP^]]V?( M1CW9Z!QZ$=IQP0R0A7)!6CGRQE8>1AZYR7/L$N:"LY+5 MID\0^%67^H70ALI,(1-_'./HC7P<@]B,\20D_]Q8QP']=LM+ [2C#+@^SBP< MA'&$[?=]2Z$W@O&0?^; M)+\!4$L#!!0 ( -@S7U>K"@25%@, +(& 9 >&PO=V]R:W-H965T M6FAE+Y(;=FT?4"@EFT?IGUP MDVMCX=B9[5#8K]_92;."2K4OCE_NGGO.OGLRW"C]:')$"\^%D&84Y-:6UV%H MTAP+9LY5B9).5DH7S-)2KT-3:F29=RI$F$3195@P+H/QT._=Z_%0559PB?<: M3%443+],4:C-*(B#[<:X,3MS<)DLE7ITBZ_9*(@<(1286H? Z/.$,Q3" 1&-WPUFT(9T MCKOS+?IGGSOELF0&9TK\X)G-1\%5 !FN6"7L7&V^8)//A<-+E3!^A$UMVR7C MM#)6%8TS,2BXK+_LN;F''8>KZ!V'I'%(/.\ZD&=YPRP;#[7:@';6A.8F/E7O M3>2X=(^RL)I..?G9\1R-U55J*\WE&F8YTVLT3+\=%5$O<&AMIWEUZ#3-_ZYJUR3@;? MF+'V0>68HL05)VM"\E7QZG2F M#!T]*,M$B\Z,>Y\;3+%8HH9.7;X)?(#^99?&W@4-\5G4Z<.,F1Q*]D)"Y_CT M>YU3.+FXI('.D_XID/B0M$C*+LV97-,E42)0SPWT(88X>A.8>D:YN$W74"S_ M$,F 9DE4#_MJ,=S1D0))"9Q:&DA5)6TM*>UN*\B36H?^F==J?DM"PJ4!@2MR MC&ULM9QO;]LV$,:_"N$50PNLL4A*BOMQN1:M!JVQ,@B >KUB:CZ87]6NW8GI1;&26 MYOQ6H'*S6C'QXRW/BL?+$1[]?.%S>K^4U0OCZ<6:W?,[+K^N;X5Z-MZKS-,5 MS\NTR)'@B\O1&WQ^-0FJ ?4GOJ7\L3QXC"HKLZ)XJ)Y\F%^.@FI&/..)K"28 M^K/E5SS+*B4UCW\;T=$^9C7P\/%/]7>U>65FQDI^563_I'.YO!R=CM"<+]@F MDY^+Q_>\,115>DF1E?6_Z+'Y;#!"R::4Q:H9K&:P2O/=7_:]^2(.!N#PF0&D M&4".'4"; ;0VNIM9;>N:23:]$,4C$M6GE5KUH/YNZM'*39I7RW@GA7HW5>/D M]!U+!?K&L@U'-YR5&\'5&LD2O;SFDJ59^0J]1E_OKM'+%Z_0"Y3FZ,NRV)0L MGY<78ZGB5RKCI(GU=A>+/!/K4R)/4(#_0"0@M&?X%3S\FBU.67);G?3YV \/^@=7..B_7+.&7([5U2BZV?#3]_3<%!'A#0OI=C4Z]MG>J<4UTK5[M].28@G.+X8 M;P_M=#\6XFC_F=8LP_TL0W"6[]*/IDK&-;RJX_VIB+0U%4AUH5@DJ-9\N;2HR.QED<IFF,)R%YDJ5P7%M?!YB" M05_UZKV>L>2!SU')DXU(94XDJM[5-S"H9! MQ2)O:??P.@DB_#1OP;BVOC398!AM[HHM%^I<(G^> F %XW7TP3Q80P^.K//5 M*>ZX4FO[U,"#0=:PR=>XDZ]8T<#3=/6!.%@S#H8AY^]-(?E\)W@KTH27N\?J MQ.]-?<*-;NISB1(M"H$^S-6Y1)JH+V&W[.CE1[[E&<*OT'_HYDOS@5!8,Q0^M974CTS,D7I5"I;T6R-=8'JZB^&HMJXT+!$,)N3'E"F> MKP&IO[SAE)!(AH'B(P#_DX$*O'1Q0EX(D9)X-SBEVNU-H^-781N-ADCB.-(+@%?" 6T8A%8,3RM 6&2Q[PO(PS MPP?1$4UT9&*] YQ"F"NUMD\-802N9%GL@-/A'> #N(@&+@(#EZ<=8%!+@2=H MG"(^8(]JV*.![5:@CH"M:9'XP#^J\8_"M3+SK= (0EL!CFGK25,>A2G/TU8X MHCP#3\PX-;QT P_:@=1Z"SCE/E=J;9^:^ZCKCB+MMA0[6\ 'XU'->!1FO#N5 MINE"974NT2>YY )]FE51V"SCZ$.^WN@\)X,%&#B6\6K[($6J29%:MQ^I4Y9S MI=;VJ5F.PM4YHVY^M_O8R6!* MK?U=:38+K7N4H5-XI1]EX# @6V-'5Q^-="D_(5D'RZG MP,&-<\ 'A(4:PD+K_F;H%*EUO0Y5 M,UH$,]JOY/P1!1(XNO%EK#ZX+]+<%\&M4R#7(Z?,YDJM[5,S6P37T\QS/>KV M3'NN7X'#VMK2B!;!B/8U+YY+;3I8$X&UC1?8!]-%FNDBZ\YGY!3(7*FU?1Y< M90]7Q4QJ(M%PSQ..9NM&8U<$8Y?-Z734!:^.*Q_0%6GHBN >Y%!%)')*2Z[4 MVF8U+47NRUK1<"L2CFKK2K-1!+/1T0?6X^H?<#3C%??!5['FJ]BZKQ@[92-7 M:FV?FHUBUWW%>+BO",>T]:0Y*(8YR"2OATL=<##CY?;!4K%FJ=BZ5Q@[)257 M:FV?FI1BU[W">+A7",>T]:2I*(:IR"2M#&PO=V]R:W-H965T*'OA6T($^)DF&9\96R%VGTV31UN28GY+ M=R23OZPI2[&0IVQC\ATC>%4ZI8F)+,LS4QQGQGQ:7GMD\RG-11)GY)$!GJ^Q9NM*"Z8\^D.;\@3$=]WCTR>F37**DY)QF.: 4;6,^,. M?E[85N%06OP;DP,_.09%*$M*7XJ3KZN9816,2$(B44!@^;4G"Y(D!9+D\:," M->I[%HZGQV_H?Y3!RV"6F),%3?Z+5V([,P(#K,@:YXGX1@]_DBH@M\"+:,++ M3W"H;"T#1#D7-*V<)8,TSH[?^&>5B!,'Z PXH,H!G>M@5PYV&>B161G6/19X M/F7T %AA+=&*@S(WI;>,)LZ*O_%),/EK+/W$?('Y]@84G^#W'WF\QPG)!+\! M.%N!K]F><)$6%\ $+&BZHUEY0M?@7+^/]T3@..&?),+WIWOP\<,G\ '$&7C> MTIQ+:SXUA8RC8&-&%>W+"]L28__H+]*S?5!&/!-:*WZ[CMW7H90FI CQZ>:57L9KLY]"U M_<"=FOM3Z@JSP K=L#9KD7)J4HZ6U(,LU5?9*.Q%+H5QQ@7+RX)4$3TBN2<, MD -]Z'6(]LTD:2053;=W?SMT70MV:/;-8 !MWU$S M]6JFGIYISI@D)E-9][:*H]>_NH'5_SOVBVF0C"TG>9HOZZ8@>^'W29]NWD M NDX QT$FTD(]:/PCG,B)DL$0P7:3'&H'^/GMU)_1-MVZ/5Z M7F7FV@.#'#:3'.I'^;/K,R[. MP4AH[1PT\@.^HS_.[)]0H=;=7EWVK2"4$D]=EZB1#4@[DL_OGPKGE( ;HM[F M1V'F. @.B'74C':D'^T/>19'\0XGPV).CW#Q!G0DM':\)UOPZ^S!Q]V$7V,7 MCAKQ@=[9AY_70!7*:1>I2"U&N/B'(R$ULY!(S;0*,\,4%]#] I2\5S!#=Q@H"0;F8'T,N.)[@DC M\2;35.6H.F,LM':\C-SD"CZ S45Q"AWWT2HS :D.AV M(S'LD21&A7/ZY#3TND^P%$8P[*WEYLD+A.+MS0-FFSCC("%KZ6;=^C)"=GPA M^4UA2(6A:'FX)7A%6&,C?UY2*MY/B-47]6FK^/U!+ P04 " #8 M,U]7DU:X;=D# '$@ &0 'AL+W=O9BMJ4;N ?U:7LGL&76+!%+(9.,9T3 P]RXMJ0 ?F-"D%U&I"W/BC*$OD.>S_=^^3MFW?D#6$9 M^3WFN42DG)D*YZ8MF&$UCYMR'LXWYN&2]SQ3L21!%D'4@O>[\9,.O(F:U,(X MC\+<.)V$'T)U22S[@CB6X[;,9WD.W"G@3IL[WV<]^#[KJVZX#^$E<>TV^)&6 M;IUD;L'G=B19D5'-/"-__8I#R:V"5/[=EC0E[["=5U?=J=S2$.8&EE4)8@?& MXLB([BO2PCO2PBQTS9ZV(A# 73#'0=62'E8*N M$QC@*CB0&';L2W ]HUD(!/M(*"!BBB1[H.3W\9SF"9SE6 MG3Z],F6]6C&O4[&?A=8*=V4)^Q0[=. MSUZIVU6MVU6G;A]4#%COR0456O_*CM97KKH]4GF]TD6]$FVZHGL**Z3 M.JZ3_VE[,^DSTGV2^7V2!7V2K7HB.XJT;3T=EZS.;_@Z#$6.18]E"I!?81D, M >.-.YS60X]U4I2&UF38*('=-E\:NK-L!KW:7+78=#VGN9[JT6_I]>QJ4=Q)/].45R7LJ-KBPDP0>T)1U M.<;%1)2W#F5#\6UQ2EYSA6?NXC$&&H'0 _#] ^?JL:$-U'<_B_\ 4$L#!!0 M ( -@S7U>@C%U7^P4 "4H 9 >&PO=V]R:W-H965T0-D!#/C#.>'\,_GCT(^3G?<*[ UVV:Y=>CC5*[%Y-)OMKP M;9P_%SN>Z6_NA-S&2A_*^TF^DSQ>EX.VZ00% 9MLXR0;S6?EN7=R/A-[E289 M?R=!OM]N8_GM%4_%P_4(CKZ?>)_<;U1Q8C*?[>)[ON#JX^Z=U$>3VLHZV?(L M3T0&)+^['KV$+UXQ5@PHK_B4\(>\\1D44UD*\;DX>+N^'@5%1#SE*U68B/7; M@=_P-"TLZ3B^5$9'M<]B8//S=^NOR\GKR2SCG-^(].]DK3;7HW $UOPNWJ?J MO7CXC5<3HH6]E4CS\A4\5-<&([#:YTILJ\$Z@FV2'=_CK]6-: Q R#$ 50-0 M&??141GE;:SB^4R*!R"+J[6UXD,YU7*T#B[)BJPLE-3?)GJ8*%*_@ MUR_[Y!"G/%/Y%8BS-7B;'7BNML4), :+8]Z N ,O#W&2QLN4C_6R&"_TF)-K MG]YRI2_(GX$G(,G AXW8Y]I>/ILH'7'A=[*JHGMUC XYHOMKI9Z# %X!%" , M/BYNP=,GST[-3/2$ZUFC>M:HM(L==F_Y4H$%7^UEHA*NIWLZHUS/J"W8HU'2 M;K2HGQ?Y+E[QZY$ND)S+ Q_-?_X)LN 73\BX#AG[K,]?;H54R3]\#6Y$KMJB M.XYGY?BB& ]SPJ(P@K/)H<4OJ?T2K]\W4N0Y^)CIDD]+]V]TJ;>F\FB'-OQ' M[:YI[9H^SO7O^IBW^J:6[S&,I@RU!\#J )@W@-=Q(H\)_!2G^]8EP2S'A 80 MA^V.I[7CJ=?QC9 [(6/%P5(X"L=KX,RU&-;AA4.43SA R%$=P<:/ APBP975"T=MH Z] M .Z R,I ,\<0$A@ZRA4:.$,_G;M3LC+4#"%P>#>(AH]DM!N4T*;T&%/F^)& M!M70S^H.]05M2$,8,#1U^#:4AGY,VP7VI\C&JQ\7F=?LN@7:JLLG!R]W$XG3H0AQHM\P_H6M31>!FO/NNYY_6R;8UAB$89&1@C M/$AW[T7\N5$;B",_Q+ODUH8WG@;4 6]DX(W\\':DME.GXC=][ETS[$=LD%P/ M@7YDT(_\_?V/(5H9.$FU1H@CTX;>R$_O[@A%-L4=?0HR $>/!+@'H3;!QX2T M!X -P[&?X1UJ#-OLQD'H\FS(C?WD=I=8MU[%;_Y<[<' 'P\BF.!!%).&9-); M,[&[<4PI=.@&V, <7THUP3;3'76&#<_QQ803W*:<4.+HU;#A,NXMG6!;.\$X M8HZ_ ]C %?OA^D%/.]_+;V"9I&G[I(=HH;&!,!Y$/L%#Z"?8P!OW5E"P#6T& MI\113<1@F_BQ?9K13FV)W^*9-XL8W)-!!!0R!.6)H3SI*Z 06T!!)'*T)<2 MFEQ*/B&=Y1/24+@O)I^0%OF$N!1VPVO26SPA-J<1H0Y6$H-IXL>T55G=NA&_ MU7/7J2$\&40Y(4-@GQCLD[[*";%[;A:$4]?Z,N@FEQ).B$UP1WE10V]Z,>&$ MM@DG-'3H)M3@F/;63:BMF] (A8Y&B!JF4C]3%^+ )4_N,_>C'+^%,] M&LS3OBH)M542&$#'KR(UI*:74DEH9Y6$&EK3BZDDM$4E<3U[9@;8K+=*PFQ0 M1U.'Q,X,IID?TW9E=6M'_&;/7*?,()X-(HZP(;#/#/997W&$V;TV#%S_YI@A M-[N4-L(Z:R/,T)M=3!MA+=I(Z&C&6&-/2?]-)F?@_#]02P,$% @ V#-?5XX"9[+.! >1D !D !X;"]W;W)K&ULM9E_D]HH',;?"I/KW+0SNYL 2=0]=69_7.\ZT\[M MU&[O;U34S";! FI[K_Y(S :] (=N]Q\-,3S?AR_P@>!PQ_B36%$JP?$&D*O)E*-:'T;1U6%^HFO&=V)@VM0-67*V%-5^# ?!5'EB.9T)BL) MHKZV]([F>:6D?'QK1(,V9E7Q\/I9_7W=>-68*1'TCN5_9W.Y&@7] ,SI@FQR M^9GM_J1-@Y)*;\9R47^"7?-L%(#91DA6-)65@R(K]]_D>Y.(@PH(62J@I@*J M?>\#U2[OB23C(6<[P*NGE5IU43>UKJW,9675*Q/)U:^9JB?'=T2L+D#U"7[_ MMLFV)*>E%!> E'/PH=Q2(8OJ!K@$?W F!'@L5=_GV3]T#CZJ,A7UD^])QL%7 MDF]468T4<+,E64ZF.;U4IWM/I7I O -O0%:"+RNV$4I&#$.IFE09 M"V>-_=N]?62Q_]=,7H$(7@ 4(0P>)_?@[9MWQS*ARDB;%M2F!=6ZV*)[3Z<2 M3.ALPS.9496/XQ8)U2*3V;UH;!:M)MBU6),9'05J!@G*MS08__H+3*/?')9Q M:QF[U,=U'VRK/K@ .55=)5>D!!"!@I5R9TDK9W$.R]M=* &Z5+9E)2;C"0=(RA) M!FEB=I*V3M)3$^-K*.UF!N)!9#'4:PWUG(:^,$ERL&@39(KC MUR!0H_J371^L)O!G0ZA1/.Q@&&$81>8.AAKAT(G;%W"H$3X:W) &J($V0A-=2HAFY6^P )=N&,XUYJ38BF M,W3C^00F01./T]B: UD^#]$5L'%AO\ TRS/S:&= N=.<,UMV'\5+#F7@W-= M:]A#-^W/P=*@T\5)VN]9UCVDN8ZQQP%]LZ1A,:N0E] I"0B6_ 5@,FW18]O;$M+41O[4]L9 %]MQBE*S%:RIC4^F MMJ\C;,(VLJ 2:VIC-[5]P(2[E,:]*(&6V!K3V(WI$\"$35A.^@.+A8/##C>7 M)VQ+..7P-(V+DFG.M: Q_[GY;XGB)U-^26-R6L:8Y/ M/BKQ==/=FMO<:$IC?TI[3_LNIN$@MEG1E,8G4]K;D0G3T#83-:6QF])>(.I2 MV9Z,6%,Y=E/Y! XU2JF[\>'!07KUI\0GPI=9*=386ZAJT55/M8#OS_GW!&PO=V]R:W-H965TV6A7U:B3PK\98!KXJ"L)^7F-/EP'*ME>$N MFZ5"&>RP/RJFQ!\\D[\,-+47*850F MF!CPT6[\^0Z\+0O95M-;5?/2VTGX*1:GX+C'X#F>;\AGN _WQ.8AQ8\F#D MR!9HA:]?N8'SUE3PER2+7I)L]$)D&TO3:9>FLXL]K/]EMOJ79^I?-BU%S1)H M%G7C+$+7.>_;B_4*/_5Q-CVB/5A&!A_?;WTV1'9;D=V_$9GK8\JDLJ;IKL4^ M.5L+7LLT.6V)B/8A&AF%/LD\#I; M@@U.3P3O0S0R.+G.]MK::U=8@6RF>P<.,:U*41\YK;5M3R[TK;QEOW1[0]=@ MCV0[4W1WKSU2V9,B4 M@YR?4BI6 Q6@;?+"WU!+ P04 " #8,U]7L*)7].($ V&0 &0 'AL M+W=O^/VC88!_!_QCU?JBVJFTF_;2@#FB2V(:&^C]]W-"+H8Y?G8ZC3= 0OQ\[8 _.&&RE_63 M6@NAT<^RJ-1UL-9Z7*HJED^O&C*QKTF4W#X]#F7,E[F3Q M5[[4Z^M@'*"E6/%MH;_*_>^B&U#;P84L5/N(]MVQ48 66Z5EV34V/2CSZO#, M?W8GXJ@!(9X&I&M VGX?@MI>WG/-IY-:[E'='&VJ-2_:H;:M3>?RJOE49KHV M[^:FG9[><;6^0,TC^OACF^]X(2JM+A"OENASM1-*E\T.-$(?5RO1GD+TA>MM MG>MG9!*%0G*%;G8\+_B\$"/S/1G-3)&3QN_OA38'J _H'$?2W21S\_ Y-XY-(&I-X.#+N(V,PDHRH/S)V(C.#(5E3AB+(V\9>/4-V3^QD1C-OS14DLAA2D$/:*N@9BDQ/-]HA9!"B,(@D0'5H%1 M[!WIT=4OK" ($G45I)EO940M@A1&$/2(N@AZ:* 60 H#"%I$70"39$P]F=8_ M"OOGY8BZ]M$TBCW@4NL?A?V;R9VH1?Y8^:_1X IOG= 63#H^!T/T''A2BR>% M5YNO8LB]\,Y2SV*>60 9#"!\@\B5SS-/F&6/P>R! C&7O2SQ?&N918_!Z('^ M,!<]WQ@M> P&#\2'N>#Y H_N\L':@?BP5VO'K'8,ULXK3]?NY#ZFN1[[5UYX M=!>\^4?A"Z\?\TJA0JQ,L^@R-57JPTWZPX:6F_;&^%QJ+\LX@" #'!@ &0 'AL M+W=OO#M*A=UX=I#P[UD$^J -#H MN61<39U"Z^K2=5560$G42%3 S%1&I3ED2^7 ,3]=3QG=>).[HNM)UPTZ0B:[@'_5 MI(G/=>%D2!3/!'FFNBZDS<5 .*[)A^D[47Z#S$UF^ M3##5/%'=YH9C!V4;I479@8V"DO+V39Z[[[ #\,-W +@#X'\%!!T@:(RVRAI; MKB?H].3,W2"*$??"[%1A.-T]XN[NWBAB_XB]T7-*J(AE,'5-%"N06G/3C!S_V/@^Y_4]D;[P'O??@&'MZ1VKSYVB0E+#! MDVSA<0.WU;]-)YYWX2?N=M?"8=;8'V.OSWJC+>RUA4>U/9I:/Z?\O)(B S6H MKB6(=O;UQS[>$W>8=.'%P]*B7EIT5-H-Y=345X[60@Q70'2P:82].-B3=I@5 M7DRB<%AJ.Q,2?;MMD&6E1-YUD*;?I8,RS,30/2)ICUE1#Z-;#-K+^[TC]02P,$ M% @ V#-?5QY6G*J#" #U@ !D !X;"]W;W)K&ULM9QM;Z-(%H7_2LD[6LU*F=A5F!=G$TN30%&SZMYN=<_L?%BM5L2N MQ&@,> G$VE__ (FQ@6X#*/37Q*;5#VWX![>SJW4[6N2_I9MI,S)']$VSNXF MFSS?W4RGV6HCHR"[3G8R+O[RE*11D!=?T^=IMDMEL*XZ1=LIF\VL:12$\61Y M6VW[G"YODWV^#6/Y.279/HJ"].U>;I/7NPF=O&_X$CYO\G+#='F["Y[E5YG_ MLON<%M^F1\HZC&2=B!%$8 M'WX'?]0'XJ3#_%P'5G=@K0[4.=/!J#L8K0[,.M-A7G>8MSN<&Y)9=S"'1K#J M#M;0"';=P6YW,,]T<.H.3I7=0SJJ7+I!'BQOT^25I&7K@E9^J 11]2Y2&,:E M=K_F:?'7L.B7+S_((O$9^8'\,TC3H-01^=Z5>1!NL[^1I_RO?Z&V\W<2QN3G M3;+/@GB=79'OE.^WT[P81TF;KNJ8]X>8[$Q,2CXF<;[)B!>OY;JGOZOO;USJ MS_7]%YK^T^+X'0\B>S^(]TP+_,<^OB;&[(JP&3/(+U]=\OUW)T=O6Q[C_ZZ2 M:)?$,LY[!OR@Y[MR5?!IQ:=';M^!TW,^K?)K,J/J.'LPWA ,JS!,@^&8T?B8 MT8CAQ_@,1M&&<3S!C(IKG#W!LDS**U*=:%?$E=DJ#7?5=?O?'XJVY*=<1ME_ M^LZB WC>#RYO:C?9+EC)NTEQU\ID^B(GRT(9UJQ/&0](F(N$>4@81\)\)$R M8(H(YT<1SG7TY:>=+"_N\?/A6G1%5DG6=QVZUV+&2@X)4RI.2ZEN^"M>*;, M>^_'6M38M")A[@%FGJ:56DXKK=U&C%JMC/%N(]LT6@+QNXVLN66WT@K:026M MUC&MEC:M'_3GI[;SV$0B8:[5.;*T??2];ANC?7)VF[!%.XD]H>BLE4/0OBDY MM(\YM,>%])$AA=VYT!L+ MVVQ"*@IPC@IP1BD@*)X!^Z_,6L[8]"-AKM/-A65;K?/,0X;D@T+ZR)#"Z:;? MMIPSZ5\5:Q*\%'>79TG6A622?9R3XEXC>T6C!8X6 M#9+FUK3%20)GUS-SWE8-,B@?%M2'!A7]00VC_QY#6:,'-DX/:74]:9XZ.S(>.3%P8F3UH M8*H(&W>3:GVKY==";L$N2?NO/U '$TISH30/2N-0F@^E"11-U5MC9-+YM[+3 M*=3]ICG;;5 M!75\H30/2N-0F@^E"11-55=C3E.].WU\8BMDY3A7L]F,9+_OBPO8#T])DI,B M9A1FLG]:!]2LAM)<*,V#TCB4YD-I D53U=@8Y=3Y9L]S4.\<2G.A- ]*XU": M#Z4)%$U58^/;4[UQ/ZIR5[,4"W)A&8OV31?JRT-I'I3&H30?2A,HFCH_L+'Z MV26K?_B+0HTZ?9!S6C,B'O3AQHH*2O.@- ZE^5":0-%4434% :8O"/PLTZ@L M':V2.$^#5>];P07$T;6T:G.P=W(JU/B'TCPHC4-I/I0F4#15;$VU@>E=Y$^' MA[(\(:F,Y>M555VXJ#X]TSR(KU=ST*H"E.9!:1Q*\Z$T@:*IFFN*"TQ?7!@^ MC:8&77H6T\<;K2IH"0%*XU":#Z4)%$U555-"8%I36#% F#W* -&3Q[YR0FDN ME.9!:1Q*\Z$T@:*I:FQ*",S\5@8(@T[KAM)<*,V#TCB4YD-I D53U=B4'IB^ M]##J/;6GX&"W;[C0B@.4YD%I'$KSH32!HJFB:BH.3%]Q&/2>JD3O5,W5OI]!B 93F06D<2O.A-(&BJ9IK MB@4,-,M?SQG]G :M)[!N$8,:S&C]%,!,'"3_?6H ML8*!TERC._&^/=,?&I!?#NA# PH4315*X^H;>DO^:[+/-X])FNR?-U?D8Y!E MP6JSSV3>?W'1TT9K!6KU0VD>E,:A-!]*$RB:JL#&ZC?8M[(D#.B_%D!I+I3F M06D<2O.A-(&BJ6H\63]E7!% .R=#SQJM/^RB*=A54XR.^[)@=GM1!&A,?U!, M@8JIZJ6Q]PV]O3_&PM*C1LMEWCD\5FN"MPN-Z$%I'$KSH32!HJFB:EQZ0S_1 M?XB%I4>,%I-^0.\3-WHO-%#O'4KC4)H/I0D43=58X[T;>N_]3WE8>N9HT>E' M>-X1[*" MFO@I4S(-8IB>KAD8R?:Y6D,U(M:1 &>1DZW&5VA^KM5E;V^_IS0/MV>[2 M&Z]O.Z'U61)5'S9_W M&'P\W7#Q(DL A5XK5LN95RK57/B^S$NHB#SG#=1ZIN"B(DIWQZ*I49L#/I@U9 MP2.HYV8N=,\?5):T@EI27B,!QP#2!V^UW]5N;O$YF021<<_:3+E4Y\R8> M6D)!6J8>^.8K] E%1B_G3-HGVO1K P_EK52\ZH.U@XK6W9N\]ANQ%8#QG@#< M!V#KNP-9ES=$D6PJ^ 8)LUJKF89-U49K<[0V7^51"3U+=9S*OH-.2:+/Z+95 MK0!T1VM:M16RXVA.WO074.A^P>B*F&V4Z+E>@D#W#0@]4*]0KW!Z XI0)L_0 M":(U>BIY*TF]E%-?:9L&YN>]I:O.$MYCZ3Y7YR@(/R$LDQFX)G 2@^RGDK05;]0(%S$ M=(A7!'FK"#!SO^?8KQS /RMPF@NF3LB5E37, :%C@O. M$^U8='6[ZRC>V%JYX$I77MLL]5T'PBS0\P7GZKUCRN]P>V9_ 5!+ P04 M" #8,U]7KSF[_F@" "O!0 &0 'AL+W=O?LP,6T,/B ^N,FUL>;8P7:;\N_Q M2QH*RHKX$M_9]SQ^[N*[K)7J45>(!G8U%WH65<8TEW&LBPIKJL]E@\*>K*2J MJ;&N6L>Z44A+#ZIY3)(DC6O*1)1G?N]6Y9G<&,X$WBK0F[JFZN<CRWGJXGW %X:M/K#! M9;*4\M$Y'\M9E#A!R+$PCH':98O7R+DCLC)^=)Q1?Z4#'MI[]G<^=YO+DFJ\ MEOPK*TTUBRXB*'%%-]S!)!L=%&UAW8*JB9""O= M=74X !#R!(!T .)UAXN\R@4U-,^4;$&Y:,OF#)^J1UMQ3+B?8YN08>SZG MG(H"@6J0*UA@@?42%8Q#0D+7EMN<3$@Z3K)X.R!DV@N9'A5B"V0? MN0#<%145:P1%#4*P!]])H)L>R'@YFEY<#*M(>Q7I?Y3#O@WIJM&]CB$5Z4 Q M1LF$_"4C/FBB&M7:CPH-A=P($_JIW^VGT55HPM_A893=4+5F0@/'E84FYZ]L M"508#\$QLO$MN93&-K@W*SM14;D >[Z2TNP==T$_H_-?4$L#!!0 ( -@S M7U= [!5RXP4 (8E 9 >&PO=V]R:W-H965TZR-)=GG852R]>]GDP6-"/R ME"]IKG^9<9$1I2_%O">7@I)IV2A+>R@(HEY&6-X9C\KO/HKQB*]4RG+Z40"Y MRC(B[M_0E-^>=6#GX8M+-E^HXHO>>+0D<_J)JL_+CT)?]6HO4Y;17#*> T%G M9YUS^'H2!D6#TN(+H[=RXS,HAG+-^=?BXMWTK!,4BFA*$U6X(/K?#9W0-"T\ M:1W?*J>=NL^BX>;G!^]OR\'KP5P322<\_8M-U>*L$W? E,[(*E67_/9W6@VH M7_A+>"K+O^"VL@TZ(%E)Q;.JL5:0L7S]G]Q5@=AH ,,=#5#5 !W: %<-<#G0 MM;)R6!=$D?%(\%L@"FOMK?A0QJ9LK4?#\B*-GY30OS+=3HW?Y8KDTCT7[7M)U'F\]:%0/&I7^\"Y_3"K!KE?E M1"IGKCP!%_1&3^HEG8(KFBQRGO+Y??WCI,P$%6#"R7(5"]!O3Q=\5L+#MV"B[7\6BY)0L\Z>K%**FYH9_SS M3S *?G%%LR5GC=CB.K;8YWW\F^!2@@D1XI[E<_"%I"OJ&O#:2U1Z*?::FS$. MX; _ZMULCF2?54-B6$L,O1+/DV25K73F=*[/,RX4^Z_,HDOFVE-_0T 7A2@8 M;NETF<%!#-U"^[70OE?HGWH;WQ_)OM7WTU_I/&A$&O][I^B/I"7C+9$)2\#Y?K.KA.;5JFEIG4DB*U M@-XEZ6I:R&=Y=REX0O6:5P_;)J/.+<[;Z6/SUY*S1GR&=7R&/UKY&+89VY:< M-6(+ P,D00NKHW*R9WGXNWKJ4#;8"CZC_;$2T](D:,M;,W2&T* 74L:7M+@' MF>KUP&=@M@[&#GA\4[G:G L#JT+[^WOJ> P503\6:>VA4SNVM*.H&&93O-?Y M4\4;7H)^8-+B^T[Q-O8@' 3;XKW.GRK>,!3T0Y06'SG%.Y!H: &HW_E3Q1O M@EX0*<0/G.(C1^$?6-/F&)0##>9 /^=H\;%3O$TM_=#2[O7]5.T&@:"?@:YT M*:9DIJAPCB ^9 3'8!1H( 5ZZ_2A=71X4!T]!A(@@P3(CP03GBU36MRN[6-, MOZ-'WT( #K86R5ZS MIDR##LB/#H\YKD V3G3AL#_AT,XTFOP0[DQXYZ M$Q2;VYY39TN,48WG&,2"#+&@^(>K%JT>^;3EK1E?PU/(SU,'5PN;J/HQCK3?2=A;ZQ &0N*,UHKIS[F-_1HS-SC/,0;.@'^^GG&=8)W"HBM>6M&5^# M2-B/2 <_ +7Q!X?6YNLW:DHTA(3]A/2H*F$?UG01W#Y==5GI^XD=0@W38/\I MS(&[B'T: Q'<5N@PBG:P)C90@/V/@KYSA6CU,4];WIK/X VJA&T\YZF<1-[< MNHRLW/8V7I(IWE!Z3\2&ULA57?3]LP$/Y73AF:0-I( MFOX"UD:B,,0>$!4=XV':@YM<&PO'SFRG@?]^9Z<-W6B[E\1GWWWWW?GN/*J5 M?C8YHH670D@S#G)KRXLP-&F.!3.GJD1))PNE"V9)U,O0E!I9YHT*$<91- @+ MQF60C/S>5"%*@L;%.+CL7$R&3M\K_.!8FZTUN$CF2CT[X5LV#B)'" 6FUB$P M^JWP"H5P0$3C]QHS:%TZP^WU!OW&QTZQS)G!*R6>>&;S<7 60(8+5@G[H.I; M7,?3=WBI$L9_H6YT!^0QK8Q5Q=J8Y(++YL]>UGG8,HCC/0;QVB#VO!M'GN4U MLRP9:56#=MJ$YA8^5&]-Y+ATES*SFDXYV=GDB6G-I'V%^[G@2^8R9>#X&BWC MX@2.@$OXGJO*,)F946C)H[,+TS7ZI$&/]Z"?PYV2-C?P56:8_6T?$M.6;KRA M.XD/ MZG]A2BSB>(H[@+C[-K.#XZ.8#;;=/0];C=/;AW:H54:M;%.[,4+-,9 M3+7*JM1"FZ/+--45$_#S00D!5!4UJ?W:E9;&6V^W-]=H%Z9D*8X#ZB2#>H5! M\O%#9Q!].1!+KXVE=P@]F>"22\GEDLI5,)GB+H(-Q,!#N,9=);WNL#\*5SL< M]UO'_8..*5\K;GP%T;2 NDD;1P/.CO\6L,XSC MWY$*M\)^[ M&;Z[F^Y9]._=A%L]7Z!>^LEF(%65M$W[M[OM\+QL9L:;>C-Y[YBFBC$@<$&F MT>F0(M;--&L$JTH_0>;*TCSRRYP> -1.@PC=/]^ MMB$HD]+N!7SV?=]]9[XC[;1YMA4 DI=:*IO1"K&9,V:+"FINKW4#RIWLM*DY MNM#LF6T,\#* :LGB*)JQF@M%\S3LK4V>ZA:E4+ VQ+9US!-_BO?GM&_$K:0VK8&R,^[ MK47C//#KG/B^R,WY(GXNYK;A!634&=^".0#-W[^;S*)/;[20C"TD;['G#RU: M=-J=;-*TIJB+KF^GE)C>L'V N@DFV6ITE@O+RLTX&)_@SG=:XS'POAO_&OE?4$L#!!0 M ( -@S7U>3MB"7[0, )44 9 >&PO=V]R:W-H965T\9@Z+&KXSNU,$SF*X\"O'5O-RF4\/N_I<=%Y[,PC4?1&9+^Q5*^FSM"!E"[()M/W8O>15AWJ&5XB,E7\ MAUU9=X M)ANE15X9XWO.>/E+GJJ!.# (@C<,@LH@.-6@4QET3C7H5@;=4PUZ ME4'O5(-^9= OQKXQIW5W@WUWYT$K\)=$7X'GOX/ "SKPY2&$B^^;^G5S M"B8H,$$+)K3C363'F_@<;WZZ^QTN?OC.[_<^7+8,?*>.LTX![[X!QV4 )SF' MZ"E9$;ZD@ 4[(IMB8MY*,DOM6*U)0J<.KJ6*RBUU9L91[T.3D#9AH4U89!,6 M6X(=:=NMM>T6],YY:PCA*7RDZ9+Q)5R;#81I1A6$3"694!OT _[X&5%PJVFN M_FR*A*[-2+ )"VW"(INPV!+L*!)Z=23T6F?Y2R2\@\_"I XD@^M<;+B&OZ%< M39IT;J6>J[--6&@3%MF$Q24,+F )\]X M\'#"[VFS5HT7C&:VWK7/5MPL+V4>A 7IP> MFZ2VZ49L"78DM>^]G."]_WJSKEHXW*W?#WK!X/5VW5!SX/?]5Q7#)N30[XQ> MU8P::OH];_2:&;A=8B+QY7 ME.!\-17P^T((O7\Q#=0WD;-_ %!+ P04 " #8,U]7R8"?XR4+ #\M M&0 'AL+W=OF_+TB!"R@0)M+7'VR2PGTNB'MS MSN"$1[QY3;/?\Z>'J]N8Y?DR"I(B>W:Q\=K57'A:K9)TOTK60)5\_ M]7X5?XZDZ\V [1%_7R2O^=%C8?-6OJ3I[YLGQL.G7G]S1LDRN2\V1%S^\RVY M2Y;+C52>QW\JM+>?M<]X2'Y&K\L M"S]]U9/J#8TVWGVZS+=_"Z_5L?V>P6JQ?OLW_J.Z$$<#).G, M *D:(%TZ8% -&%PZ8%@-&%XZ8%0-&%TZ8%P-&%\Z8%(-F)P.&)P9<%T-N+YT MAFDU8'KI +&_6[G^Z9#AN2'[Q;YXM<7=X6W#QXA47=TLN7KSFXF[1 MQ8M77=PMNWCQNHN[A1OOK1;?>DMY+S% MB&V D>,BOKW)TEIL'VRBU'5_&E<5Z$U"#(BM_NBC'%;=RDBV^Q9N@ M)ACKO,A>RF!9Y,+?A/E+D1?Q^F&Q?A3*T/4:9P_"7;HNLC($YD(8?UDFP@+%,O^Q/'Z6%H*C >_B(LUD+XE+[D MI9__5+XJCD<7OS@X?3%0LY-7U.+DA1_^K^UJ-&%* M%RS0SIV3VH6YF[5>)JV+Y?QS=N:4]"Z,'JG"![5HN]I6)T8OWUKYGTX39+=#=+M/9W1UU8IIW]U69'?JOFH%J!:B&H1I=6C^E&#NM@:U>^>%MON.S]9KQ;K+XO&0-Y*= [D MI":CFH)J*JIIJ*:CFH%J)JI9J&:CFH-J,U2;HYJ+:AZJ^:@6H%J(:A&EU9.- M=$@V$E6B$M&^;U2344U!-175-%334U*[17&]7+B""M>H=WCJ":C MFH)J*JIIJ*:CFH%J)JI9J&:CFH-J,U2;HYJ+:AZJ^:@6H%J(:A&EU7/.H:-< M;&TI_!/%*[2SO-*.;_Y'$TDZK5VA/>.HIJ*:5FG''ZH1&PIA.CJK@6HFJEFH M9J.:T[![I\/K=Q^[0ON]4+>+WY"I#%NF@,Z&@;-ZK)J*:@FHIJ&JKIJ&:@FHEJ%JK9J.:@V@S5 MYJCFHIJ':CZJ!:@6HEI$:?5D!].3=ZY?M7N=,X_T[OY_,!V-3^I7Z)P* MJJFHIJ&:CFI&I8F#X\62!B>E!!.=U$(U&]6GWPJ(SCE'-1?5/%3S M42UHW+SOFI1#=-*(TNJQ_= 7+K7WA=_%Z_AA\]FK\[^$O5WH',W1KP='-075 M5%334$U'-0/53%2S4,U&-0?59J@V1S47U3Q4\U$M0+40U2)*J^>:0X]Z^9"J M70W1G$-J,JHIJ*:BFH9J.JH9J&:BFH5J-JHYJ#9#M3FJN:CFH9J/:@&JA:@6 M45H]YQS:U:7V+S;O7KM"F]8K[?CV7Y2DTU][A>NT#GGJ.:BFH=J/JH%J!8V[=W):1$WHN:L1_9# M4[C4WA0>O"[R7%"S>'W?&,?1%G!4DU%-0345U314TU'-0#43U2Q4LU'-0;49 MJLU1S44U#]5\5 M0+42UB-+J>>;0GBY-L*H5VJ6.:C*J*:BFHIJ&:CJJ&:AF MHIJ%:C:J.:@V0[4YJKFHYJ&:CVH!JH6H%E%:/><P0MO%4URL7/OZ9IL7MR5?JO:?;[=H[; M_P%02P,$% @ V#-?5P69^L;" @ +PD !D !X;"]W;W)K&ULM59=;YLP%/TK%JNF5NH"@82D'4%:$U6MM(^H6;N':0\. MW 2KQF:V2=I_/QLH(H-DG9:]!!ON.3GWX(,=;+EXE F 0D\I97)B)4IEE[8M MHP12+'L\ Z:?K+A(L=)3L;9E)@#'!2BEMNLXOIUBPJPP*.[-11CP7%'"8"Z0 MS-,4B^UEB"5-.OY%8)1-K;*$85CBGZHYO;Z#J9VCX(DYE\8NV5:UC MH2B7BJ<56"M("2NO^*GRH0'H#_8 W K@OA;@50"O:+145K0UPPJ'@>!;)$RU M9C.#PIL"K;LAS+S%A1+Z*=$X%XIP"XBNT MIX@PM%!8@9F9LFO",(L(IFC.)3%OZ1Q=8R+0 Z8YH-,9*$RH/-/L]XL9.CTY M0R>&Y&O"<_CER'=?K@$\/PV<0]9!7 MPMU=N*V-K-UT:S?=@L_[HYMRI_7O'W4ANM56R1]=39:L@VY6$^1+F>$()I9. MJ@2Q 2M\^Z;O.^^[6CX2V8X!7FV =XB]N9RPE*"ZFBT9_(+!?&0V8?_"#^Q- MLX=VC3NJ2W:4#6IE@]NH%X3=BZD;@NN0=9_W;E'(ELQP"_-L#_+]'QCVG D#W8I.NZ8=';NQG9FCQ"NJ*(6, MJIXH(,>51,B,:IS*E:L*"32VH(R[ON>-W(RRW FG]MFU#*>BU)SE<"V)*K., MRE]GP,5FYO2=QP6TZE3&F!S M_,C^T=:.M2RI@KG@WUBLTYDS<4@,"2VYOA&;"]C6,S1\D>#*_I)-%3O&X*A4 M6F1;,"K(6%[]TX>M#PU ?_ ,P-\"_'\%!%M 8 NME-FR%E33<"K%AD@3C6QF M8+VQ:*R&Y::+MUKB*D.<#A<@V9H:*\EEKK0LL4-:D??D*DD4:,WR%3E5.%+D M< &:,JZ.O^9]%>1[A&O M_X[XGA]TP.?[X0N(>B2HX/XNW$4C:C?\V@W?\@4OUUL&+M)KMW*6N8ADV,GM/M.V+V)$VK*4-]TK[C&_G M2ICQL#*.V';E&N(ND<.6A+:%[9CG+!S5.D?_W6[.Z))Q>Q"Z!(_:@OW)$\'M MF,'XN%OQN%8\?I6FC__:]'T1.](FM;3)"YK>L&]_YR?MP],RLAW3-M)MW!'F M?OY$);[/%.&0(,KKC;%46=UYU42+PEX;2Z'Q$K+#%#\30)H 7$^$T(\3!2OB.=$!3-\$@GUQRIE))IBR&N 4?;LL?;TI-GTNY/>?XD:L*A+U6A0H0B2G_ MDD2\9*IZ89K5IL,X,87UR?K$'9ZZ+>LA=B15 _%(7[4SEU0D.JPYS%"5>F!MYQA175#%/LJD!H =R?<:Y6$ZV@Z=."/U!+ P04 " #8 M,U]7*>CS;3($ 6& &0 'AL+W=O::;AH'T'*>%MEI4;7=LM:![D:4%N6. [_,$^W2:B;-!7BQW>D@AQ"5 MA KQ9TJ.O',-RE >*?U6WGR*EYI1CHAD)!*E!)9?![(F658JR7'\VXAJ;9\E ML7M]4O^U"EX&\X@Y6=/LKS06R5+S-!"3#=YGXIX>?R--0$ZI%]&,5Y_@V& - M#41[+FC>D.4(\K2HO_'W)A$=@M29)I@-P1P2[ L$JR%8S^W!;@CV 2O14JV\J+)?L66^TJ*<* ^"R:>IY(G5/3F08D_ /8GH MMDBKXOT,3JU!RO%VR\@6"Q*#QR?PD= MP[OD";P/B,!IQC](^->' +Q_]P&\ M VD!_DCHGN,BY@M=R &6W>A1,YC;>C#FA<%8X#,M1,)!6,0DGN '\WQ_AJ_+ MQ+39,4_9N35G!;]$X@H8\"=@&J8U,9[U<^AF13>GPOE_O8>O[KV7#*N=*E:E M9UW0ZTR&TPFN^PQ%9:M+K.&$'HJU^ M_ $BXY>IE*L4"U2*A8K$>L6QV^+8<^JG=3R5_9J(*F+YNW%80=\U;;C0#]V\ MCF&FX:-RYG1AP1B&;,-SW3XL',-R &0RN*H% M4BH6*Q'K%<=OBN*]U@)KH=!:C9T ' M#0Q@C$*.9P\6=C!&F;9EH.'ZGX!YMG%I_7MMC-YLC.&>R5?DJ1!G>2^=8"K% M I5BH2*Q7O+]-OG^&ZU^7V5Q5(H%*L5"16*]XD#C_")OO';]-\SN:G2@9P[6 M['H"9GN^90P<8 (&D>>8_L "IG"NY2 X[0&PLV6!LY%^E#MB01A8)VF!)^.= MY;]TPBE5"Y2JA:K4^I4PSY4PW\@2&F%5)5*I%BA5"U6I]4MTWK3!V6W'K"U8 MHP5JV;;G#&UA#$/(1B-;&,.@Y7O6\,U@"N=;MG?)%LX[(#B_!?HB$FD*-SR= M]H19\HLGG$JU0*E:J$JM7X;S%@TZ;^4)2K=P2M4"I6JA*K5^B<[;.#B[$9GU M!#3:N%N&ZUI#3QC#3,\:6D

@XCC>P!+USSID3MJT.F#F( MZ+X0]3E6V]H>8M]41[>#]EMXO883[4%YZ%V=JY[EZQ/SSYAMTX*#C&QD5\:5 M*RO(ZD/H^D;0777*^DB%H'EUF1 <$U8"Y/,-I>)T4W;0_A6P^@]02P,$% M @ V#-?5QEJ46.: P /Q !D !X;"]W;W)K&ULM5A;;]LV&/TKA%8,+;!&]XLSVT!BJ5B!%0WB=GL8]L!(GV6BDJB1E)W^ M^Y&4K%BVZJ69^F)+U#F'_"XXUN?YGK(O? L@T&-95'QA;(6HKTV3IULH,;^B M-53RR8:R$@MYRW*3UPQPIDEE83J6%9@E)I6QG.NU.[:&;1P6[DF^%6K!7,YKG,,:Q.?ZCLD[LU?)2 D5)[1"##8+X\:^3FQ+ M$33B#P)[?G2-5"@/E'Y1-^^SA6&I$T$!J5 26'[M8 5%H93D.?[I1(U^3T4\ MOCZHO]/!RV >,(<5+?XDF=@NC,A &6QP4XA[NO\-NH!\I9?2@NM/M.^PEH'2 MA@M:=F1Y@I)4[3=^[!)Q1) ZXP2G(SBG!.\;!+L(WG-W\#N"#MUL M8]>)B[' RSFC>\046JJI"YU]S9;Y(I5JE+5@\BF1/+&\AQU4#:![2&E>$5V\ MM^BP&A..\YQ!C@5DZ.$KNF,T:U+!$:XRM :V(REP]#H&@4G!WTCJYW6,7K]Z M@UXA4J%/6]IP">5S4\C#JBW-M#O8;7LPYQL'<]$'6HDM1TF503;"CR_S9Q?X MIDQ2GRGGD*E;YZ+@QU1<(V[NCO-Z#G.L6:#:YQ@6G\,"SXK"< A+SF%A$ 3^$VP0I=]'Z5^,4BR92&Q0E* O2O CS2&8LD)3BL53BB43 MB0TJ%/85"E]J#BW1/S:'T+(M[\0<1F!^Y'@GL/@835FA*<7B*<62B<0&%;*MI^' >JE/=,S!ZT%HNR<_^ZL1 MF"]1T8E/C, BW_*"$Y\8@=G.S/)G)T9A'@U$LIER/8ERE-*F$NU+;K_:3[LW M>L8[6;^UKU?VR'JLIF,]@#W)MZ/U!\QR4G%4P$9N95V%TM58.ZVV-X+6>AQ[ MH$)VNK[%&;=#_9[#\%U!+ P04 " #8,U]7!;>X34(" M O!0 &0 'AL+W=O$%/'X 'QX"8WC37'#K;3CG^/[611)W6#!U[B>^U[ M3NXY_DCW2C^8&M'"8R.D69+:VG9!J2EJ;)B9J!:E6ZF4;IAUJ=Y2TVID90 U M@L91-*,-XY)D:9B[U5FJ.BNXQ%L-IFL:IG]?HU#[)9F2IXDUW];63] L;=D6 M[]#>M[?:971D*7F#TG E06.U)%?319[X^E#PC>/>',3@E6R4>O#)3;DDD6\( M!1;6,S W[#!'(3R1:^/7P$G&7WK@8?S$_C%H=UHVS&"NQ'=>VGI)+@F46+%. MV+7:?\)!SX7G*Y0PX0O[H38B4'3&JF8 NPX:+ON1/0X^' "FYR\ X@$0_RL@ M&0#!.=IW%F2MF&59JM4>M*]V;#X(W@2T4\.EW\4[J]TJ=SB;K7&'LD-88Z&V MD@=KW\-568:0";B1_5'Q"Z8+$U*K6O* M4]-B:."Z;R!^H8$OA9U -'T'<10G1^#YZ_ 5%A-(>GC\'$Z=%:,?\>A''/B2 MO_A1:=5 KJ35[J"Y/;$UY&$W4,./JXT)\S^/R>WYSX_S^TNY,"TK<$GR9%Y8K8PU8!54G*BX$%(,=QU3W5+- Y5^. M73:=7\;SE.X.Y1RI.K^87XY5?9_TX#C[I^0STULN#0BL'"Z:S"\(Z/YZ]HE5 M;3CA&V7=#H6P=B\::E_@UBNE[%/B+\WX1F9_ %!+ P04 " #8,U]77?VR M(-D" 6!P &0 'AL+W=O-J'$PZ5].AV^\W?.>X,P=C<)XLE7IT MDYML'$0." 6FUBDP>FWQ&H5P0H3Q:Z\9U$]/S^FE2AC_A-U^;Q1 6AJKBKTQ$11<5F_VM(_#@4$< M'S&(]P:QYZX.\I0S9EDRTFH'VNTF-3?PKGIK@N/27P0EP"=]R M51HF,S,*+9$Y_3#=4TPKBO@(Q7NX5=+F!C[*#+.7]B%Y5+L5/[LUC5L%OZ;V M J+.&<11W(7[Q0Q.3]ZUZ';K<'6];O>([B1-52FMQG4URJXRZ;CW,5>64V+,5Q0"5G4&\Q2-Z^Z?2C#RW.7-;.7+:I)U,F M/#4S[IYGY%&Q1 W=*FQQ$VXEV/>"KMZWR: ;C<)M T6OINBU4MS(E+J)00-6 M@_(!GQ956VK7JV;_J3J=7^W5W^, M6Z;77!H0N"+3Z&) ONNJ"U<3JS:^\RV5I3[JASG]N%"[#?1]I91]GK@#ZE]A M\@=02P,$% @ V#-?5QM1-?'[ @ K@< !D !X;"]W;W)K&ULE95=;]HP%(;_BI554RNU30@?"1U$*F73=E&MHNMV,>W" M) =BU;$SVX'VW^_8"1D;@6DW8#L^KY_SVCZ>;*5ZUCF (2\%%WKJY<:4-[ZO MTQP*JJ]E"0*_K*0JJ,&N6ONZ5$ S%U1P/PR"D5]0)KQDXL8>5#*1E>%,P(,B MNBH*JEYGP.5VZO6\W<""K7-C!_QD4M(U/()Y*A\4]OQ6)6,%",VD( I64^^V M=S,;V_ENPE<&6[W7)C:3I93/MO,IFWJ!!0(.J;$*%/\V< ><6R'$^-EH>NV2 M-G"_O5/_X'+'7)94PYWDWUAF\JD7>R2#%:VX6J MBT8X)NRF/!J%7QG&F60!&Q 5D 6DGBI-*@->,G;-[U1\.X$^J!%'YQ2 M3V:44Y$"H9K(%<*G4"Q!D7YM4MB%6PN.G*"]T9MD$$1Q-/$W'1S#EF-XDJ.V MC7)+H1KGEHQS-!)--3G@44=;T>,2%)/9)1%8C]SD]EAVP=:K#O=@PS@E"B X0QF$P[ :(6X#X) >)#@=_4_A[-12M7;N70I-45L+4Y;0=;1^C MV[H&_YY>OV3W5*V9T(3#"D.#ZP@-4/7K4'>,+%U%7DJ#^^B:.3ZHH.P$_+Z2 MTNPZ=H'VB4Y^ 5!+ P04 " #8,U]7>XK+%(\+ "W>P &0 'AL+W=O M2?6/!LG&Q$7W]PDZ9KGQ=OT=I)M4L%7 M5:5U-+$,8SI9\S >79Q7GUVF%^?)-H_"6%RF)-NNUSQ]^BRBY.'CR!P]?_ ] MO+W+RP\F%^<;?BNN1/YCD_*G7"?)S_+-E]7'D5%&)"*QS$L$+_[=BX6(HI)4Q/%' QWMVBPK[K]^ MI@?5CR]^S#7/Q"*)?@]7^=W'T7Q$5N*&;Z/\>_+ 1/.#W)*W3**L^DL>FK+& MB"RW69ZLF\I%!.LPKO_SQV9#[%5PID5)A7V:W34>72XSF_.$^3!Y*6 MI0M:^:(21%6[2&$8E]J]RM/BV["HEU]2=)W(>1MFOYY.\:+LD3)9-.Y_K=JPC[=CD:Q+G=QGQXY58 M*>I[^OIN7WU?7_],4W]2;+/=AK.>-]QG2PO\MLS'Q##_1BS#LLF/*X^\^^57 MR^/^RC3?]UM$;S6MJ!Z\%?^ M1 R["?LHA.DAGEB.B6W*T6D$9N_V3+OBVL?VS#*>]]?=/?-3L3O&MZ+H0')R M_43VRUWRI^KC3P\\79%__Z- DB^Y6&?_4>VQ=?N.NOVRT_R0;?A2?!P5O6(F MTGLQNOCK7\RI\7>5G)$P#PGSD; ":-(& /!)*TZ.ZTZ.OK%[]400:S>\WN1 M%D.>8M_G;8L=]5T8DU4213S-R$:D]3[W*_ES;V=6";5N M?%8U7@[&[B\L8^RZYY/[?05V2YGS\=R42WG:'S)46LHFS8,F T7XYMB1"U%D M7 P$D[3@[K3@:K7PKR3G$0GC/ V+$>ZR3GV98E5F:]1T;].X[LPPC(/4*HH5 MT1X6\[2!#RIZ7;*461P# 23$CS=)7AZ0H+W=^ODAF3E M.)(DF[*'RLB]R/)C*9]VMM?9U.JFO"[F[N]:IMO=_)XVUJ$Y[\9FVX;=36;0 MC?=GT&1X3$03,KZ;)?UF3;KM!S-9<7927Y7',3S.T'$>A,E3T*03;+9 M1O78Y,]ZU*?*^ZRSR>R#E&L#&#J$Z&W.[RT1( .B2!@#P20ES'=*F&N5X&=Y MN"YZ]A6Y2=(;$>;;5)"TZNJ3E&SC5"I"!422,@6"29DRCM9Z,5U(-CR*2%'U0NNN$ ME.<-3?L'^3$/^QU]F$.5HZ^) M-..4B)(MW(!I7E0FM^S M$2WR)'BJG-."QD&A-(:BR=)K'6)3;Q'7D\[UE-6@(Y/;/9!;]K3KSRU4)6U[ MJO",]:$.EDO7#79,UYPKCDS="!W341C,%!HA0]'DU+?>L=EC'O/'XO 2BYLP M)S=ILAZ6?X4I?#8S%>GO&KE6D7]%]J'VL2*^J>%VFPT4\4V=,]6(!.H?HVAR M[EL'V=1;R-_;\4C3URR3+,_(DF_"G$?5%\U?(9LHU7Y1J9O9EULBF.IO4RFGJU3+EVYOBZ&7W30^4*I7E0F@^E M!5 :;6C2J-68FL;\<+3'4.W*4FP-=4MOJ%?+((_UU_JZ@[4$]<*A-!]*"Z T M"J4Q%$W66^N86]8;]]<6U#&'TCPHS8?2 BB-0FD,19-%V]KJEMY6?^ZOMW=Y MDE83.<@.V^YT%7/;= SK8+7H0A_D8"F>V*Q_:L$ &A]5-5NZ/MT.]#4L=:NU MU"V]&_QIM0K+K//H^U9#IKCF?JZXO6.AC'*S$$YOU3RT8 M0..C4!I#T63]M',@5L_R^,=-F-:'N6:6JYKGK!6TXD]*74 G0Z T#TKS>S:> M:1Q?4 $-A$)I#$63-=?.?%CZ]???19:GX;)&%Z0]^_M-N9CLW9P6A.56PV-JV#Q4CZ6 =K2!G; M[/#B)$4Q=SYV#B]/A\;&4#0YZ^W$@ZU?JO];?471J:-V6[%^O+NB;Z$H-NU> MR^[I8QNFNG*/0Z!B*)N=Y[PXJ>J]^?^\^*='8.Z)@;XF" MO2=*UU&?.8I5JM!6*93&4#197*W9;^O-_DN15K>.BY>"-)[!N\NC VX];+"T MH)X]E.9#:0&41J$TAJ+) FR=?=M]ZP$W=$H 2O.@-!]*"Z T"J4Q%$T6;3LE M8.O7_Y=#KS"^W5ECBZ^G;? M[6O^OQ,]I$.]@-(\*,UO:-)IHS.>3P\'AM ) "B-H6BRU-H) %OO80\]N^R_ M"TY_$4\?TV 1]-\(I[\(A<;$4#0YJZW%;NLM]L'GDF?]:>TMXNF#&IS6;H-. M]Z*S0%%,<>T^WHE^%_#>-PO5T7*:4B%BF/I/4R1U=%ZZE# M^P4HS8/2?"@M@-(HE,90-%F)K27MF&]\6N= E_)#:1Z4YD-I 91&H32&HLFB M;1UUI]]1?]%IG9X[6(O0%?I0FM^S!9WCIW70."B4QE T67>MP^_H'?ZVVQZ\ M!$)/'JP\J-D/I?E06@"E42B-H6BR&O?N@NZ\==<-G4: TCPHS8?2 BB-0FD, M19-%VTXC./H+!%[>=4-G!Z T#TKS>[:@QI&%QD&A-(:BR;IK9P(BU!E":!Z7Y/5O0U73;T$L-H#2&HLFZ:^=!'/T\2-MM M#S_CAEYT *5Y4)H/I050&H72&(HF/VJJG;9QW_JB Q5":#Z4%4!J% MTAB*)HNVG>%Q]1<=O+CKUG,':Q$Z<0.E^3U;4&.60^.@4!I#T6K=3?:>^KL6 MZ6WU!.B,+)-MG->/&=U]NGO*]*?JV>^^2&HGR'=XNM'6G_E MZ6T89R02-T53QGCFCDA:/R6Z?I,GF^J9P]=)GB?KZN6=X"N1E@6*[V^2)']^ M4S:P>U;WQ?\ 4$L#!!0 ( -@S7U>H\8][A00 -H2 9 >&PO=V]R M:W-H965T(FL19VT K[8]?.X8$AL109N:&),8^?GSLO&_LX9+Q5S$#D.@M M2W,QN*Z(99%1T6 &Y^F?">$:E>N135Q0<:%PVRE*7>%[@9C3)G?&P M++OGXR&;RS3)X9XC,<\RRM^O(&7+D8.==<%#,IU)7>".AP6=PB/(I^*>JR>W MBA(G&>0B83GB,!DYE_CBB@2Z05GC.8&EV+A'>B@OC+WJAR_QR/$T$:0021V" MJLL"KB%-=23%\>\JJ%/UJ1MNWJ^C?RX'KP;S0@5*ZMHJF;\JAEJT57)+K67F47/V;J'9R_"A9]'I^I<85HVN6 MJ! MDAP]Y8D4GS8*OLW87- \5H4G6\]#5ZJQ:"(W6G%?&6[2PCU 7UDN9P+=YC'$ MV^U=E8,J$62=B"MB#7@7R0[R\"=$/-)%3X\WZ/1D:T#F8NFI6Z6\6_;4;4NY MB7>:Y'_^@0/O+[G.PEE3&DRL7G,L_B()&,'+42RF +\ 9F[ 6TEY%VK-% M']_-I9"*+,FG&G>5@C/T7V,R#*^)Z)<1M20LQOU>$ [=10.'7W'X5HZ_.!_( T _4KH/XO7R+]W24R"%L2,Z@X!H=,#WU) 5&AM8I#P;C4 M7#&5<##<8 ?.Q_V6)&&O5EG/GJ92,@5:@*@G3QF3NI>L+/TYZE7WVZ_=H-N" MO6$.V"I5WTM3@_@<72Z *Y=&Z]< W?,D@D84_!L4"Y,:F7QH0<8L32D7J "^ MDW MS6[M&=AN&@=IXU'$8>-Z;+-[7)L*MKO*LY%)E=!=G3P:MM_T4GMM4U\;#QY\ M4",?0&^'=':OU3V.%%%2VQ798U<_ M+.=VT#V! M,4893ISW6$0[7BWFU?T:0V)V)UDJUEO0?2'JBW@NP;2$VK(&V, MM1N1/6ZTW_?WH-OC^^O\XC6[VKSLRW#M5\2^4[F<3CE,M4)\4>LX45OQ"#W3 M= Z';E[([]B]D-K6R.'[%R4/C80FPJ:"X; [:+%Z4ML6L=O6YN)LZ[IAFQ)V MPWY+U[47D3U>M'_-M1$%!R7#W3ANR(!/RT,5@2(VSZ4Y>:A*JX.;2W-<45#F(,4\2%:4AQ&PO=V]R:W-H M965T)9S $5>LC27/6>N MU.+2=64\AXS*<[Z '+],N.'_6FQ])S_%T0)!"K#0#Q;\5#"%--1&& M\;OD="J7&KB[WK)?&>VHY8E*&/+TD25JWG.^."2!*5VFZI:OOT.IIZ7Y8IY* M\TO6I:WGD'@I%<]*,$:0L;SXIR]E'G8 0?L(("@!P2&@=030+ '-4SV$)2 \ M /B=(X!6"3#2W4*[2=R(*AIU!5\3H:V132],]@T:\\5R?4_NE,"O#'$JNE,\ M?FX,,-4)&?(,KY^DIH+C%[T&TB"/)MF0-/HK$'AW2%_BK5IH*TGN-9"AN50, MR\;R&;FB3) 'FBY!$CXEQ@.Y*>V_"9HC%SD;@:(LE9^ZKD(9.A@W+D,>%"$' M1T)NDFN>J[DDXSR!Q((?U>,O:O NIJ_*8;#-X2"H);R)U3GQ_,\D\(*F)9[A M*?# P .;G/_S/OYG[WO):%87JFGXFL^:E7- 8>@XV10EB!4[T\8/?]K[:TOZ>9*/W)!N_$]E> M@<*J0&$=>W3+Y'-C*@"(H IL12CP%P:OWYE5Y)U[H=]U5[O9M5H%G7VK46&% M?7J?;-]J;.=Z];@GM%4);=4*U1TLUKTF82N60)Z0#8/4UC &+9M_KW4@9GC$ M[$#-Z(C9Q8%HNUD8VE6W*]7MTU2O>(K].&5J8U/1#BT&YU6..3N,9O M<>VI[51J.Z>I52 RLL]53MDBI\ MFVE4SQ3^15#CT_2U2R9;)W%WYH@,Q,P,<)+$?)FKX@6H3JL9L6]&HX/S@7\Y M]"WG(YPIBQ'PE;X82*^IF#&<#U*8HBOOO(/W1!1#7K%1?&&FF">N<"8RRSG. MQ2"T 7Z?TZA>0Y-UGM<^NWG9\H.R5 M;P $>DN3C$^LC1#;6]OFRPVDA/?H%C+Y94592H3LLK7-MPQ(I)72Q'8=Q[=3 M$F?6=*S'[MET3'0T,/$PM9QX"%>;X0:L*?C+5G#(XBG M[3V3/;M$B>(4,A[3##%83:P[?+O GE+0$L\Q'/A)&RE77BA]59W?HHGEJ!E! M DNA((C\V\,-H^HG_1SDMG7@B'.4V^QY'83*RAA2)8 MD5TB'NCA5R@<&BB\)4VX_D6'0M:QT'+'!4T+93F#-,[R?_)6$'&B('&:%=Q" MP:TK>!<4^H5"OZL%KU#PNEH8% K:=3OW71,7$D&F8T8/B"EIB:8:FGVM+?F* M,Y4HCX+)K['4$]-'09>O-S-)=83F-)7YQXF.X.)-M0'=H$>9G-$N 417Z &X M8/%22&FMB9ZR6'#T*01!XH1_EN*71!X>G_3W'Y&-^(8PX,>_.$-_;NB.DRSB M8UM(K]3<[&7AP2SWP+W@01]]HYG8<+3((H@:],-V_5&+OBW9+"EUCY3.W%; M/Y:BAQS\,W(=M]\PGWD7=5>KNTWN_#?KBW]MO4)&O\ROOL;K7\JO/,2?9(S% M,<:?FX* M&0NO#7WZ.\WV3=:0:R\I S!VS9F'SO01=UWRF%#]/NXEFFM]J^ELXO%A2&+%3Y')9^CUKO =WUKA^CF;@],OD*0 MWA*1O+<"^D)BAIY)LH,F,D)R\SW/G"T)%S?.:7Y_=P[?": M-XD%/>S6SKA"#/M5N*!^YC? #88]SVL^ZK#[[K_;]3SOZ'XKWM4I9Q(M+- J M9 Y&/:]?)].0U2KG[Z\UW/H N7S!Z!@!HZ\XHVAA@5:)@._T_$$] O_'$PV_ MO]'P=8^T\TM'QU!XYZO2ZP6C^EY@]!'6S>C"E-&<8OND^I4"6^NR(T=+NLM$ M7J@H1\O2YITNZ-7&9_AVCAO&0U4*U=6V=_B\COJ-,'E&H&\?;&\ M-)EW!-WJVML+%8*FNKD!$@%3 O+[BE)Q["@#98%X^@]02P,$% @ V#-? M5X!"]-L>! $18 !D !X;"]W;W)K&ULM5A; M<^(V%/XK&K?3Z59&-L<(QI MU1>P+N<[^KYS=!T?*'OC&P"!WM.$\(FU$6)[;]L\W$"*>8=N@"%5A3\=;O(8EB.?M@LF27:!$<0J$QY0@!JN)]>#>SUU?&>@>+S$<>.D; M*2JOE+ZIPM=H8CEJ1)! *!0$EG][F$&2*"0YCK]R4*OPJ0S+WT?T+YJ\)/.* M.;N"=&_@?&'1S@VY;#WYNX+?UT,L--'4[XZZ%"[# TS&C M!\14;XFF/K3ZVEKJ%1.5*$O!9&LL[<1T*6CX=O0D(: GX(+%H9"6&@4]DUAP]', L<)_R1-R]V7&\Q M-B^>EL^Z\4=D(YY5YG\Q07]NZ(YC$O&Q+20]-4@[S*D\9E2\#ZATT3=*Q(:C M.8D@JK$/FNU'#?:VE+70UCMJ^^@U OX1B@YRW,_(<[QNS7AF;[5T?EO MWN?_VGM%C&Z1:%V-U_THT?+PRQB+8XP_U04Y@_'K8=2Z><^W.(2))1=&#FP/ MUO2G']R^\TN=PB;! I-@25$Q=S-:M?81T3$I.U M*FR!Q332@2)=85>OVK]*[V M"*[VF#?UJ) ;%.0&C>3DV60%L>)'&8+W;:^/64'0K7Y@>Z5"T%1_;@!' MP%0'V;ZB5!P+RD'Q"CS]!U!+ P04 " #8,U]7KA*N"1$$ "T%0 &0 M 'AL+W=OYUD)-Q2Q?5%@^F,).3G.#=MXG+C-MBF7$^9BML-; M6 /_MKNA8F2V+$E60,DR4B(*F[EQ;5]%MBL-*L2?&1S9R3N2KMP1#HW M)@9*8(/W.;\EQU^A<*:9P<7=F/T+7>4[BFDL8WD),MF7VKX#= ,V(1#/. MT,<0.,YR]DDL]&T=HH_O/Z'W*"O1'RG9,UPF;&9RX:?U/$MPVR\QCDI3-(^'O,+Y%ECY!C.:YB/ZN7F#N5 MN:-RY_^M'OWTZIU@N&W%N16?^PR?]A+Z^S>Q OK"H6#_J(JEWHZGWHX4XBNV MPS',#:&T3.P)C,6'=W9@?59E2B=9J),LTD36R:G7YM0;8F]4I$YA?*HB4*N( M*BTU8U QRG]GAX7MN($_,P^G\5:@7#<(NJCP'.79OCWIHB(5RK.G+:KCNM^Z M[@^Z+FM05B>% Y1[I:>#!*\M0)UDH4ZR2!-9)PM!FX7@;8E*H#.G.LE"G621 M)K).3L=M3L?:1:5F]$]_XFY?4A28H"<5X3G&]J;CGIXH0+[MJN5DTCH]&73Z M5H01TS@=B=/N01SC=^)0SD=('(00E%L!%D5:;E6N#_*^MB)UDH4ZR2)-9)WD M3-OD3-^6RDQUYE0G6:B3+-)$ULFI;3W=@"SM.M-0GO[V7<^?]I1&@?(W6(FWMCN*X\"%4S.E.<=*%*H!NJ_8?$X[M2UZW M!]K9ML5X7376>O-+^VIE*^9#V9*LNEY/]'4_\RNFXFS$4 X;L91U.18J2>L6 M83W@9%?UP.X(YZ2H7E/ "5 )$-\WA/#'@5R@;=0N_@-02P,$% @ V#-? M5XV8I \S! AQ@ !D !X;"]W;W)K&ULO5E= M;Z,X%/TK%CM:M5*W8$A(TDTB30.K'6E'$Z4SLP^K?7#!":B ,[9IIOOKQS:4 M0$*L9.1N'\J7S[GV.<;E\2DJ>I05>4L#*/$?TY1YG M9#>SH/5Z8Y5N$BYOV//I%FWP ^9?MDLJKNR&)4YS7+"4%(#B])KBG>L=0[D4!X)>9(7'^*9Y<@>X0Q'7%(@<7C&"YQEDDGTXUM-:C4Q);!] M_LK^AQJ\&,PC8GA!LK_3F")H*')\_EC1*A.!@ M2;WKNOO;]WM82?(GX+''@#7,?U>OJS. ?N*KC; M P_T\(^("KAW$AZ> 8=5=$J.;5&$ M9Y98@ABFS]B:__H+])W?^Y0V21:8) L-D74\&32>#!2[=\*3\%N9\I<;L,@0 M8X"LP6>QFK.2OH#JQ?OG+P$ 'SC.V;]]%@U,6F22+#!)%AHBZU@T;"P::E^; MR@BZ?WFVUYR(5 M$7]3^[E'>[_1WM=KGR 1NR5^#*[$)X:IV]=]-WB.MWE]15F*Y#+%CX1$'$6&]JGHHZ.9!&&/YB9CAH;( M.IJ/&\W'9ZPOJY;204G38B,^TBFA8(G%(;X!(B7GF7@HIO^BI!07O'[49X@V MXJ6&C(_>@N&Q'28CAH;(.G9,&CLF_[L=VHB7VC$YQPZ3$4-#9!T[H+,O0)R? M3EO[LNI[/=^E(/CC0];N9#;SPZ5-1HD6N*K:OH MOLR%^CIWA>6^LY$";M& @PVM!Z=R. MQ !HM>M=77"R5=NZCX1SDJO3!*,84]E /%\3PE\O9(#FMX?Y#U!+ P04 M" #8,U]7[")T:2T& #A* &0 'AL+W=O?V#+5YD%W>KDB2WI+]9?51PEWW1W*G.64*R8XDG1Q MU7D;7L1X: R*%G\R>J_VKI$)Y4Z(K^;F9G[5"4R/:$83;2 (_-O0&'^]2/ZNR)X".:.*#H3V5]LKM.KSKB#YG1!UIG^).Y_HU5 X.7 MB$P5?]%]U3;HH&2MM,@K8^A!SGCYGSQ4B=@S !R[ :X,<-N@?\2@5QGTV@;C M(P;]RJ#_7 ^#RJ (O5O&7B0N(II,+Z6X1]*T!C1S462_L(9\,6X&RJV6\):! MG9[>\$3D%'TF#U2AUQ'5A&7J#3I#7VXC]/K5&_0*,8X^IV*M")^KRZX&I\:T MFU0.KDL'^(B#'OH@N$X5BOF*EZ)R0SO3GW\*A\&OMGS[!(M\@L6>P!K, M]'?,]%WHTWBQH$4111K(D413&Q$EABE? &(6A#5LR'C7J3<=\>\G 7\M 9,DP\6-T< M$,D4+#5H(45>O%!4ZXS"_E/;&' Z.94!GV#1V#)N^ZWR&Q\VPOUA:!_=DUUF M)\[,SE("2[5C;&](MB;E5CP#,4!X8ET_G%Y.3:U/L&AB&=R3]N#VY+%!01C4 M6^?@1TN,EH2K!95H)5EBACQLHN&]7DM^IL792HH-*S07F?\+FWTS ^Q[;&=/ M3B7**UI4H36IZK6V%[&E56^,L7T:A'OR)?PN#B#W%.K[7<94BJH@$%F"/]@>2,ET7_;HMNN*:2DPQ]HAO*UQ3=0A^8?1EP M^SIYA'M5=$_D 0?A!.E4BO4R/:;)8U\]:G)52[G0K>6>Y&H#.R*Q5F9"%(O$ M6J="PK2@JI@Q0J>PA,#:4#RR$NCLP,D$^D2+GD@.$#AZFD!//6H26.O3T"U0 MWPE)V9(7WTG>5N1LT7_HQBSUW/95Z]J->#(C/M$BKVBQ+[0F-[60#H.S6\<^K4&Z04^GPBA95:*W/\@<5RI?39IYKK8[=6OU8A?H= MGELKE!OOY)1[%=Y>T6)?:$UF:H&.\4M4*.Q3=\^\HD5>T6)?:$U^:K&/W2+W MF17*JXKWBA95:.T*A=L5ZB6$.JZ%.G9KT0AF@=(L:98H:ZZ]"FZO:)%7M-@7 M6I.26GKCP8N4)J_RVRM:Y!4M]H76Y*>6W]C]0_8S2Y-7M>T5+:K0VJ4I;)&^+4VBMY]?AQ2RT/(_"B[@\;5?# MEX?_/A"Y9%RAC"[ 57 ^@L!E>9ZNO-%B51P8NQ-:B[RX3"F94VD:P/N%$/KQ MQCC8G6J<_@]02P,$% @ V#-?5[LEDXLH P 30H !D !X;"]W;W)K M&ULK59=;],P%/TK5I#0)K'E._N@C;2V0?" J!BP M!\2#E]PVUA*[LYUV_'ML)PUM<,L$>TELYYYS[SW7SO5HP_B#* $D>JHK*L9. M*>7JVG5%7D*-Q3E; 55?%HS76*HI7[IBQ0$7!E17;N!YB5MC0IUT9-;F/!VQ M1E:$PIPCT=0UYC\G4+'-V/&=[<)GLBRE7G#3T0HOX1;DU]6\8>].1#,78\'1!4D$O-@-5K#5.H*DVD MPGCL.)W>I0;NCK?L[TSN*I=[+&#*JCM2R'+L7#JH@ 5N*OF9;=Y#ET^L^7)6 M"?-$F\[6",GJ#JPBJ EMW_BITV$'H'CL@* #!$- = 0=H#PN1ZB#A ] MUT/< 4SJ;IN[$6Z&)4Y'G&T0U]:*30^,^@:M]")4[Y-;R=57HG RO3-*0G%V MLP:N-@:Z+3$'@<[0%%=Y4V%33K9 APQ/9B QJ<2I@HAVJ7L1BKZ4K!&8%F+D M2A6L=NGF76"3-K#@0& A^LBH+ 7*: &%!3\[CK\Z@G>52+U2P5:I27"4\%,N MSY'GOT&!%X26>*;/@0<&'MC2^3_OV3][WQ,C[+=-:/C" WP9YI30I4!SX.U. M0-]O[H7DZN#_L!6[I8OL=/IG>"U6.(>QH_YV O@:G/3U*S_QWMJ4?DFRV4N2 M92]$ME>3J*])=(P]G6!!\6PV86!G&R;S:SLD7>Y;Y99F5+(J\WVY,F[J6) MCTJ3+1:J,>G?6$&J1KB+])$?\9E7\9#X2P&'D7_D &BU$0 M#XPRBU%\%=HE2'H)DJ,2W!W8%VHO=,,S+G.]TRJ7F^&I;KO M =<&ZON",;F=: ?]#3+]!5!+ P04 " #8,U]7N!F*1[,# "^$@ &0 M 'AL+W=O^ Y H, LW M(&[S-9,CNV:)20H9)S1###9S:^E>AJX&Z(AO! [\Z!JI4NXI?5"#3_'< P0F 7P'\UV885(#!:S,,*X NW2YKUXT+L,"+&:,'Q%2T9%,7NOL:+?M% M,O6@W @F[Q*)$XL[W4F(SY=[8/+)0#<[S("C<_0%,X:5BN@L (%)PM_+6:YO MSVPAC%4WE+P+'VE.7\GW,MB!=6J#[)W0GIYP"Q& M__PM*=$G 2G_WB7BP*2()LD"DV2A(;*&B,-:Q&'O"[7,!#F/25)H ^40%8P( M(GT5'J.DD Z&-HRF*)+Z%J*4EVX08):1;,M1#JQT6G16&N[[+AW+)0SU$M0? M@OUB-)GZCN/,[/VQ1!UQ[FC?2=L'VN;3#AHY'=[3#G/;QM,.\D8G;6=:MVK:VZHU,+W?RJ+ZS^_9 M^OKFMKOF7J[??79-D@4FR4)#9 U!7.?7GL1Y8PNJ%F!(1Z-L@5&VT!1;4\JC M[:7[]D94K>'8&%[:4$>(WW:KX-^9PMZ0LDOVT7X\!;;5!R%<%EEDHMR4U;/U M87]#J7@>J 3UD=7B)U!+ P04 " #8,U]7WIGW MRM,# #G$P &0 'AL+W=O9P6;&0GGZXEILBB!'+-;LH9"_+(D-,=< MW-*5R=84<*Q$>69:O9YCYC@MC/E4M3W0^924/$L+>*"(E7F.Z>L",K*=&7UC MU_"8KA(N&\SY=(U7\ 3\>?U Q9W94.(TAX*EI$ 4EC/C0W\2CF5_U>'/%+9L M[QK)F;P0\E7>W,O=_1 S5W, MY04SN"/97VG,DYDQ,E ,2UQF_)%L/T(]'UOR(I(Q]8FV55]'=(Y*QDE>B\4( M\K2HOO'W>AWV!(+3+K!J@?56,#PA&-2"P;F"82T8GBNP:X%][AR<6N"<&\&M M!:XRJUI=98V'.9Y/*=DB*GL+FKQ0_BJU<"0M9"8^<2I^386.SS\1QM#5(T1D M _3U&BTIR5&04D!7'G"<9NP:O:\:WJ/G)P]=O;M&[U!:H#\24C)BY*5.$.$HOMB2>%;"05']QSR&]FV(#Q!?W\2(M7&_FG+OBK" ML#V"K.T3ML81S Q1O!G0#1CS7W_I.[W?VJS7"?-TPGR=L$ G+-0$.TB@89- MPRYZ5=%4&5N*JM66'IWZ2]-#)\S3"?-UP@*=L+"".0HF7Y4V3IAOGV\]J-Q MOUGZRFV=$<,*9N]%'+KN*;>=QFVGTVV?\52\B$(L?&8EQ44$XL58O<4(P]O\ M=8XG[MJ]PXG?=0:]U#>=,+]]^&_&'YPSR?"_4 >&N(TA;JKS-D $]G1%\G+- )"S7!#G)BW.3$^"=R8K?=ONYMMIG8DMNK MP/B<8MPYC$N?;ITP7R&PO=V]R:W-H965T9+2!V-FP/18.DW1Z&/=#2V2(JD1I)Q>E_/U)2) >6V"9K M7FS^NN^^(WF?CLN#D%]4AJCAH_&R'KN1\5)4.F<<;R2HJBBH_+K&7!Q6'O$>!V[9 M/M-VP(^7)=WC'>K/Y8TT/;]#25F!7#'!0>)NY5V1RS6)K$&]XD^&!W74!AO* M5H@OMO-'NO("RPAS3+2%H.;O'C>8YQ;)\/BW!?4ZG];PN/V(_EL=O EF2Q5N M1/X72W6V\BX\2'%'JUS?BL/OV 8TLWB)R%7]"X=V;>!!4BDMBM;8,"@8;_[I M0[L11P9A.&(0M@9AS;MQ5+.\IIK&2RD.(.UJ@V8;=:BUM2''N#V5.RW-+#-V M.KY%I665Z$HROH=-1N4>%;R]1DU9KM[!!*Z21%:8 CZ8FZ#,Y 2N,<%BBQ+" M( SA#3 .GS)1*V;=P[<:;=7TQIW^EU[97HH[Q'^OA5Y#N:* M'*A,_QD*OT$]'T:U:7>I2IK@RC-Y56-Z\<\_D7GPBX/S>KVE.>8) M-6QQSSBWU,4.2I1,I$-L&[QYC6=S^CXFP31:^O<#+&8=BYF3Q8:J#$KZU:2S M'KPAC?GLR.F$!.&(UWGG=>[T:L[$)"4W-S?)*-\C2*H1FO8@B_D0BV$.BX[# MXGOW'WGJWOG%B?MPQ/M%Y_W"Z?TCQXDV(@J?4!KQH+40KI'CC@V?@Q/NA5T2MP)D&OG\$/3K 6\/B7D6G502)]\S_ZAR+=#4GK8^5Y"(BNNF MB.U&NS? 55/Y]LN;!\0'4[HRKB#'G3$-SA8F&ULO9=M;YLP$,>_RHE54R9U@9#G M-D%J2K=U6K6H63=-TUXXR26Q"IC:)FF__6P@""K*DHHM+P#;=W^??[X<9K1C M_%YL$"4\^EX@QL9&RO#,-,5B@SX1319BH$96C/M$JB9?FR+D2):QD^^9MF7U M3)_0P'!&<=^4.R,628\&..4@(M\G_&F"'MN-C9:Q[[BEZXW4':8S"LD:9RCO MPBE7+3-365(? T%9 !Q78^.B=>8.M7UL\)WB3N2>0:]DSMB];EPOQX:E T(/ M%U(K$'7;XB5ZGA9283RDFD8VI7;,/^_5/\1K5VN9$X&7S/M!EW(S-@8&+'%% M(D_>LMTG3-?3U7H+YHGX"KO4UC)@$0G)_-191>#3(+F3QY1#SL'NON!@IP[V M:ODTT-L^DUR- M4N4GG5DT%_@082#A:JNN AHN2D(]\0[>P_-1. $3Q(9P%$ #N NH%*?P]DVK MUSW7'=\V+!(D6*K.DT)[9$H5K)[27*2!39+ [!<"^[J036BW3L&V['9NWA*E MRP.46H-4Z?/T)S22B-^5:+G':-W-7&BM'6>1F_.L7L@V?)(J#6%$7R:UC-:U^=V1N\X@JYST6 M44UB!42=#%&G$M$-XU3B(UPR'C).=/$MHU(I$R MN)63' NW.N*L[L>%OXSGZ_T+"/L9PGZEX)0\^?'K6K($$T?88T7U^OW(F2A] MZU;*'@LM$6M9N>+9L9)?L7ZZB64O9VCW"V8%"H.,PN!_)%+E),O\"PF&&&POG5C%+E+%(NBKX[4RI_YWG%9$934IQE.14:23*9 M$J6[.68\]&;HZ/6S>G%MOVD!$Y=STIZO@?I60OGU1A& M'>Y'O9,;)>]LDJ_&'VNRVOD8<^[:E?W^B:2R!G;G,K+3_OGQ"^%MD)W$G9:= M>*00WAK83>LC:;C'TG"_%VW;3GLUD@AO@^PF#BQKWBRX66VOVDR#7I*)9D\% MKC%H7I)2YY;POCLDG(TE Z^$I(POC;D-ADG&,^DHO9EU(!\LQ9V!?=.#?5[Q MI$QDLHQM(IC?<35\"UCU0"#CO!;8=HUAT,N)4E2*D>Z4@TOC \BIVM?+7"N< M2K+TV^=NXU">=)!Q)F,JFVN+NS(->IPF($>RZ0S.*LL] )7*4MV(&9EF@I0: M5AY50]-.*.=7?,,LGN M=#0HE8DV4.DZMU0J-EFW?)5;8%6S56#S8O7>3Y(8@,#T'D0=1D]Q!$1@<@LO-L5\W'B/0/ M063[$$0&+U]D\#+WC5<]^*X]76\\6]=6!]YA^NX7>!?B35!G/&=<,5'U9BR. MJ7CPB*WI%1ESNLFOQ\-/E_G;@2=&A(E@6FD7)TZ(= MI7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/['X 4$L#!!0 ( M -@S7U>5P.%JT@4 &PT / >&PO=V]R:V)O;VLN>&ULQ9M;;^(X%(#_ MBL73C#0LD&NG*I4ZO0*2 M$+XX\?G.LV$N>%68Z6)?EYG@T,LE:Y-S\I3:B@#U+I7->PD>] M&IF-%CPU:R'*/!MYXW$TRKDL!J)3BV;SMMQ_9 M5AJYD)DL7Z>#^GTF!BR7A MA2YE\F'SW$(^\(6IMY1\<<\!9#J(QG#"I=2FK(^HS\^!<2O@X.935:HKF95" M7_!2?->JVLAB94\#5S%R+J-NA]UKTXC'^O\THUHN92(N5%+EHBB;=M0BLX"% M658#\$-Y7^B(?994*M%^BS7^J>RRY_57++,TOWA?$B M9=?%UL7$_#(A%@R@P &0-(E6RV$VF1#KY ;N9IL&4\>$V!W?E4J?99:Y/)@E M)L2:N(;^R84*8D!LASV59 M6\#V/Q!$";FZ*))WCSWF@PFQ$"Z$ABAA*PR(#Z;4U?MPYF$>\(@]<"\@3D"H MO1>) EO9_2X:)@*/6 3S4B5/PV\0--(Z%J0]BER_VO8N)EAO$0J@QH?TV ME4[6 &NUNM(\=_DP$WCD)DA4+M@#?VGU"0]3@4>L@I]"KM:0Q0W/H,"%\K;) M,EMXF!L\8C?<* ,%A.T2@/?ZF2VURMF5;.7!'B8+CU@6]\(&DJ2L-(0[=@Z- MMVJW'B8,CU@8\VIAQ*_*!N7+[?M8A]G"([;%C+^RK6$SH>NOVV+Q0IHD4S;) M="$Q77C$N@!'R%1H]J!Y:F_NF;7OZD,.[&/2\(FE@=8XK4+,QP3B]U-)L$\/ M'$!:K8D)Q.^SHFBW)CIB=;B*8M>"GUTVS"?^04J+3BS,(_Z!:HQ.,,P?_J&+ MC4Y"3")^#U5')R0F%)]8*-VI?2$$$Q(Q<3,U! /0"&8L8N)F:@@-A M..:1.YN(22@DEE KQ6V"4"M:AIAZ0F+U_,EQA^S6ID9UTM')B'DG)/;.?XQ7 M%;@'PKI=QU'EK-[.9BXF)IZ06#QO>7E7 V*N"8E=TY&8=R&B<^[$GNG.S!O* M%B1FF9!\TGW_Q # NIB894)BR^PI('9]W,7$+!/V4^<,V5U5 I2+B5DF[&6F M!3#G#8):)B"VSOS672^CR+B;FFXC8-WLQFQTN)J:9:F]=O63<<<%!$[J!NSZ>:@3A<37?E% M/DW3A7DAED)KD;8P,0M%U!,VZ-B+6^!&F(4B8@OAF&Z!&V$6BJ@7@*&8;H$; M8Q:*>QUPLBPL7$UUX3"R? MO6LMFAOO8F+RB8GELV=$O>O9Q.03DZ\^?K?VHA/Q"!//42V>47VP.3U)Q5(6 M(KV%TQO8GL C/M/,OM0KZ[P@M*OKEE66V:?_KKA1/-W]66;W1Y_3?P%02P,$ M% @ V#-?5[3%"JYH @ 1R\ !H !X;"]?6'8AL$M#K9?5O. MP#ZH!SV)."-4("[_Z ,!3[_*L1D/[7G8'[IA\7$ZGH=UM1_'[D==#YM].37# M0]N5\^7(MNU/S7A9]KNZ:S;OS:[4LEQZW=_/J)Z?[F+E;5WU+V^I MJN<.$@B2^8,R!.7Y@Q2"=/X@@R";/\@AR.B4!O0;V%0&]!O85 ;YD\;!/H+:BW$.@MJ+<0Z"VHMQ#H+:BW$.@MJ+<0 MZ"VHMQ#H+:BW$.B=4>],H'=&O3.!WAGUS@1ZY\G+$@*],^J="?3.J'CGH[@=Z.>CN!WH%Z!X'>@7H' M@=Z!>@>!WH%Z!X'>@7H'@=Z!>@>!WH%Z!X'>,?E9D$#O0+V#0.] O8- [Q7J MO?I.O8?Q\UB&6\_7&J__G52/EW/+[?+7Y==.O%^LKCC7]Q7#\U]02P,$% M @ V#-?5RP!9SL; @ #BX !, !;0V]N=&5N=%]4>7!E&ULS=K- M3N,P% 7@5ZFR18WK?QA1-C#;&1;S B:YI5&3V+(-4]Y^G!20&#$5J$AS-HU: MV_?<^$K?JI>_G@*EQ7[HQ[2NMCF';XRE9DN#2[4/-):5C8^#R^5KO&?!-3MW M3TRL5H8U?LPTYF6>:E17ES>T<0]]7GS?EY]3Y\=U%:E/U>+ZL''*6E2\)VV[D,[*AHJ]FS"M_#O@^=S/1XJQ:VEQZV+^X8:R MB^U[EO)33ZD^7N*='OUFTS74^N9A*$?J%"*Y-FV)\M#7AZ)GQY-SN6$Z?/*3 M\^13*>7H12BF+OCK_B:6$J?_'XT3;NE]H/9Y7I_ M^[B;YY'8_#C]CM_.^+7^)_L0('U(D#X42!\:I \#TH<%Z>,N?][HOCYV<]N&Y\R6?SW\"O_@!02P$" M% ,4 " #8,U]7!T%-8H$ "Q $ @ $ 9&]C M4')O<',O87!P+GAM;%!+ 0(4 Q0 ( -@S7U?_9WIN[0 "L" 1 M " :\ !D;V-097)PC$ 8 )PG 3 " &UL4$L! A0#% @ V#-?5[8($'8H!0 ,14 !@ M ("!# @ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ V#-?5^\"U"W1 @ (@@ !@ ("!FQ@ 'AL+W=O2@L "9F 8 " @;DN M !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5Y49.]--! %PH !D M ("!BCT 'AL+W=O&PO=V]R:W-H965T M.3WM\Q 4 -$- 9 M " @;-& !X;"]W;W)K&UL4$L! A0# M% @ V#-?5SN /';I" F1< !D ("!KDP 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5P6Z M]$EU @ =@4 !D ("!U5\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5];R15Q&!0 ;@P !D M ("!J6H 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ V#-?5WH?M^L1# .B8 !D ("! MIWT 'AL+W=O"@ &0 @('OB0 >&PO=V]R:W-H965T&UL4$L! A0#% M @ V#-?5Q?6RTJO P HPH !D ("!IY, 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5P5O_$]Q! GPH !D M ("!FJH 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ V#-?5_8:-T2) @ <04 !D ("!E+D M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MV#-?5]@[(W^6 P A@@ !D ("!WL$ 'AL+W=O! M3 T !D ("!*&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5ZL*!)46 P L@8 !D M ("!<=P 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ V#-?5Y-6N&W9 P !Q( !D ("!8NP 'AL M+W=O&PO=V]R:W-H965T. F>RS@0 'D9 9 " M@:3V !X;"]W;W)K&UL4$L! A0#% @ V#-? M5V4[2"\/ P \ D !D ("!J?L 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5QY6G*J#" #U@ M !D ("!QP8! 'AL+W=O&PO=V]R:W-H965TO.;O^ M: ( *\% 9 " @5T2 0!X;"]W;W)K&UL4$L! A0#% @ V#-?5T#L%7+C!0 AB4 !D M ("!_!0! 'AL+W=O!@ &0 @($6&P$ >&PO=V]R:W-H965T M&UL4$L! A0# M% @ V#-?5Y.V()?M P E10 !D ("!0B ! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5[YJ M;$G, @ A @ !D ("!NS(! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5QEJ46.: P /Q !D M ("!0CT! 'AL+W=OX34(" O!0 &0 @($300$ >&PO M=V]R:W-H965T&UL4$L! A0#% @ V#-?5QM1-?'[ @ K@< !D ("! MG$8! 'AL+W=OXK+%(\+ "W>P &0 @('.20$ >&PO=V]R:W-H965TH\8][A00 -H2 9 M " @915 0!X;"]W;W)K&UL4$L! A0#% M @ V#-?5V[^?A17 P =0L !D ("!4%H! 'AL+W=O70$ >&PO=V]R:W-H965T 0O3;'@0 !$6 9 " @5-B 0!X M;"]W;W)K&UL4$L! A0#% @ V#-?5ZX2K@D1 M! M!4 !D ("!J&8! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ V#-?5[LEDXLH P 30H !D M ("!OG4! 'AL+W=O0$ >&PO=V]R M:W-H965TF??*TP, .<3 M 9 " @0=] 0!X;"]W;W)K&UL M4$L! A0#% @ V#-?5Q>C']!P P )0T !D ("!$8$! M 'AL+W=O&PO=V]R:W-H965TTQ0JN: ( $7!E <&UL4$L%!@ !8 %@ 'Q@ )^7 0 $! end XML 93 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 94 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 95 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.3 html 229 351 1 false 71 0 false 16 false false R1.htm 0000001 - Document - Cover Page Sheet http://www.cognex.com/role/CoverPage Cover Page Cover 1 false false R2.htm 0000002 - Statement - Consolidated Statements of Operations Sheet http://www.cognex.com/role/ConsolidatedStatementsofOperations Consolidated Statements of Operations Statements 2 false false R3.htm 0000003 - Statement - Consolidated Statements of Comprehensive Income Sheet http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome Consolidated Statements of Comprehensive Income Statements 3 false false R4.htm 0000004 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical) Sheet http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical Consolidated Statements of Comprehensive Income (Parenthetical) Statements 4 false false R5.htm 0000005 - Statement - Consolidated Balance Sheets Sheet http://www.cognex.com/role/ConsolidatedBalanceSheets Consolidated Balance Sheets Statements 5 false false R6.htm 0000006 - Statement - Consolidated Balance Sheets (Parenthetical) Sheet http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical Consolidated Balance Sheets (Parenthetical) Statements 6 false false R7.htm 0000007 - Statement - Consolidated Statements of Cash Flows Sheet http://www.cognex.com/role/ConsolidatedStatementsofCashFlows Consolidated Statements of Cash Flows Statements 7 false false R8.htm 0000008 - Statement - Consolidated Statement of Shareholders' Equity Sheet http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity Consolidated Statement of Shareholders' Equity Statements 8 false false R9.htm 0000009 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical) Sheet http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical Consolidated Statement of Shareholders' Equity (Parenthetical) Statements 9 false false R10.htm 0000010 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.cognex.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 10 false false R11.htm 0000011 - Disclosure - New Pronouncements Sheet http://www.cognex.com/role/NewPronouncements New Pronouncements Notes 11 false false R12.htm 0000012 - Disclosure - Fair Value Measurements Sheet http://www.cognex.com/role/FairValueMeasurements Fair Value Measurements Notes 12 false false R13.htm 0000013 - Disclosure - Cash, Cash Equivalents, and Investments Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestments Cash, Cash Equivalents, and Investments Notes 13 false false R14.htm 0000014 - Disclosure - Inventories Sheet http://www.cognex.com/role/Inventories Inventories Notes 14 false false R15.htm 0000015 - Disclosure - Leases Sheet http://www.cognex.com/role/Leases Leases Notes 15 false false R16.htm 0000016 - Disclosure - Goodwill Sheet http://www.cognex.com/role/Goodwill Goodwill Notes 16 false false R17.htm 0000017 - Disclosure - Intangible Assets Sheet http://www.cognex.com/role/IntangibleAssets Intangible Assets Notes 17 false false R18.htm 0000018 - Disclosure - Warranty Obligations Sheet http://www.cognex.com/role/WarrantyObligations Warranty Obligations Notes 18 false false R19.htm 0000019 - Disclosure - Commitment and Contingencies Sheet http://www.cognex.com/role/CommitmentandContingencies Commitment and Contingencies Notes 19 false false R20.htm 0000020 - Disclosure - Derivative Instruments Sheet http://www.cognex.com/role/DerivativeInstruments Derivative Instruments Notes 20 false false R21.htm 0000021 - Disclosure - Revenue Recognition Sheet http://www.cognex.com/role/RevenueRecognition Revenue Recognition Notes 21 false false R22.htm 0000022 - Disclosure - Stock-Based Compensation Expense Sheet http://www.cognex.com/role/StockBasedCompensationExpense Stock-Based Compensation Expense Notes 22 false false R23.htm 0000023 - Disclosure - Stock Repurchase Program Sheet http://www.cognex.com/role/StockRepurchaseProgram Stock Repurchase Program Notes 23 false false R24.htm 0000024 - Disclosure - Income Taxes Sheet http://www.cognex.com/role/IncomeTaxes Income Taxes Notes 24 false false R25.htm 0000025 - Disclosure - Weighted-Average Shares Sheet http://www.cognex.com/role/WeightedAverageShares Weighted-Average Shares Notes 25 false false R26.htm 0000026 - Disclosure - Loss (Recovery) from Fire Sheet http://www.cognex.com/role/LossRecoveryfromFire Loss (Recovery) from Fire Notes 26 false false R27.htm 0000027 - Disclosure - Restructuring Charges Sheet http://www.cognex.com/role/RestructuringCharges Restructuring Charges Notes 27 false false R28.htm 0000028 - Disclosure - Subsequent Events Sheet http://www.cognex.com/role/SubsequentEvents Subsequent Events Notes 28 false false R29.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 29 false false R30.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 30 false false R31.htm 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) Sheet http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies Summary of Significant Accounting Policies (Policies) Policies http://www.cognex.com/role/SummaryofSignificantAccountingPolicies 31 false false R32.htm 9954472 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.cognex.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.cognex.com/role/FairValueMeasurements 32 false false R33.htm 9954473 - Disclosure - Cash, Cash Equivalents, and Investments (Tables) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables Cash, Cash Equivalents, and Investments (Tables) Tables http://www.cognex.com/role/CashCashEquivalentsandInvestments 33 false false R34.htm 9954474 - Disclosure - Inventories (Tables) Sheet http://www.cognex.com/role/InventoriesTables Inventories (Tables) Tables http://www.cognex.com/role/Inventories 34 false false R35.htm 9954475 - Disclosure - Leases (Tables) Sheet http://www.cognex.com/role/LeasesTables Leases (Tables) Tables http://www.cognex.com/role/Leases 35 false false R36.htm 9954476 - Disclosure - Goodwill (Tables) Sheet http://www.cognex.com/role/GoodwillTables Goodwill (Tables) Tables http://www.cognex.com/role/Goodwill 36 false false R37.htm 9954477 - Disclosure - Intangible Assets (Tables) Sheet http://www.cognex.com/role/IntangibleAssetsTables Intangible Assets (Tables) Tables http://www.cognex.com/role/IntangibleAssets 37 false false R38.htm 9954478 - Disclosure - Warranty Obligations (Tables) Sheet http://www.cognex.com/role/WarrantyObligationsTables Warranty Obligations (Tables) Tables http://www.cognex.com/role/WarrantyObligations 38 false false R39.htm 9954479 - Disclosure - Derivative Instruments (Tables) Sheet http://www.cognex.com/role/DerivativeInstrumentsTables Derivative Instruments (Tables) Tables http://www.cognex.com/role/DerivativeInstruments 39 false false R40.htm 9954480 - Disclosure - Revenue Recognition (Tables) Sheet http://www.cognex.com/role/RevenueRecognitionTables Revenue Recognition (Tables) Tables http://www.cognex.com/role/RevenueRecognition 40 false false R41.htm 9954481 - Disclosure - Stock-Based Compensation Expense (Tables) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseTables Stock-Based Compensation Expense (Tables) Tables http://www.cognex.com/role/StockBasedCompensationExpense 41 false false R42.htm 9954482 - Disclosure - Weighted-Average Shares (Tables) Sheet http://www.cognex.com/role/WeightedAverageSharesTables Weighted-Average Shares (Tables) Tables http://www.cognex.com/role/WeightedAverageShares 42 false false R43.htm 9954483 - Disclosure - Restructuring Charges (Tables) Sheet http://www.cognex.com/role/RestructuringChargesTables Restructuring Charges (Tables) Tables http://www.cognex.com/role/RestructuringCharges 43 false false R44.htm 9954484 - Disclosure - Fair Value Measurements (Details) Sheet http://www.cognex.com/role/FairValueMeasurementsDetails Fair Value Measurements (Details) Details http://www.cognex.com/role/FairValueMeasurementsTables 44 false false R45.htm 9954485 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details) Details 45 false false R46.htm 9954486 - Disclosure - Cash, Cash Equivalents, and Investments - Narrative (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails Cash, Cash Equivalents, and Investments - Narrative (Details) Details 46 false false R47.htm 9954487 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details) Details 47 false false R48.htm 9954488 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details) Details 48 false false R49.htm 9954489 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details) Details 49 false false R50.htm 9954490 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details) Sheet http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details) Details 50 false false R51.htm 9954491 - Disclosure - Inventories (Details) Sheet http://www.cognex.com/role/InventoriesDetails Inventories (Details) Details http://www.cognex.com/role/InventoriesTables 51 false false R52.htm 9954492 - Disclosure - Leases - Narrative (Details) Sheet http://www.cognex.com/role/LeasesNarrativeDetails Leases - Narrative (Details) Details 52 false false R53.htm 9954493 - Disclosure - Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details) Sheet http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details) Details 53 false false R54.htm 9954494 - Disclosure - Goodwill (Details) Sheet http://www.cognex.com/role/GoodwillDetails Goodwill (Details) Details http://www.cognex.com/role/GoodwillTables 54 false false R55.htm 9954495 - Disclosure - Intangible Assets (Details) Sheet http://www.cognex.com/role/IntangibleAssetsDetails Intangible Assets (Details) Details http://www.cognex.com/role/IntangibleAssetsTables 55 false false R56.htm 9954496 - Disclosure - Warranty Obligations (Detail) Sheet http://www.cognex.com/role/WarrantyObligationsDetail Warranty Obligations (Detail) Details http://www.cognex.com/role/WarrantyObligationsTables 56 false false R57.htm 9954497 - Disclosure - Commitment and Contingencies (Details) Sheet http://www.cognex.com/role/CommitmentandContingenciesDetails Commitment and Contingencies (Details) Details http://www.cognex.com/role/CommitmentandContingencies 57 false false R58.htm 9954498 - Disclosure - Derivative Instruments - Narrative (Details) Sheet http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails Derivative Instruments - Narrative (Details) Details 58 false false R59.htm 9954499 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Details) Sheet http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails Derivative Instruments - Outstanding Forward Contracts Table (Details) Details 59 false false R60.htm 9954500 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details) Sheet http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details) Details 60 false false R61.htm 9954501 - Disclosure - Derivative Instruments - Offsetting Assets (Details) Sheet http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails Derivative Instruments - Offsetting Assets (Details) Details 61 false false R62.htm 9954502 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Details) Sheet http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails Derivative Instruments - Derivative Instruments, Gain (Loss) (Details) Details 62 false false R63.htm 9954503 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details) Sheet http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails Revenue Recognition - Revenue Disaggregated by Geography (Details) Details 63 false false R64.htm 9954504 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details) Sheet http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails Revenue Recognition - Revenue Disaggregated by Products and Services (Details) Details 64 false false R65.htm 9954505 - Disclosure - Revenue Recognition - Additional Information (Details) Sheet http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails Revenue Recognition - Additional Information (Details) Details 65 false false R66.htm 9954506 - Disclosure - Revenue Recognition - Schedule of Allowance for Credit Loss (Details) Sheet http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails Revenue Recognition - Schedule of Allowance for Credit Loss (Details) Details 66 false false R67.htm 9954507 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details) Sheet http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails Revenue Recognition - Deferred Revenue Activity (Details) Details 67 false false R68.htm 9954508 - Disclosure - Stock-Based Compensation Expense - Narrative (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails Stock-Based Compensation Expense - Narrative (Details) Details 68 false false R69.htm 9954509 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails Stock-Based Compensation Expense - Summary of Stock Option Activity (Details) Details 69 false false R70.htm 9954510 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details) Details 70 false false R71.htm 9954511 - Disclosure - Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details) Details 71 false false R72.htm 9954512 - Disclosure - Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details) Details 72 false false R73.htm 9954513 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details) Sheet http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details) Details 73 false false R74.htm 9954514 - Disclosure - Stock Repurchase Program (Details) Sheet http://www.cognex.com/role/StockRepurchaseProgramDetails Stock Repurchase Program (Details) Details http://www.cognex.com/role/StockRepurchaseProgram 74 false false R75.htm 9954515 - Disclosure - Income Taxes (Details) Sheet http://www.cognex.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.cognex.com/role/IncomeTaxes 75 false false R76.htm 9954516 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Details) Sheet http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails Weighted-Average Shares - Calculation of Weighted-Average Shares (Details) Details 76 false false R77.htm 9954517 - Disclosure - Weighted-Average Shares - Narrative (Details) Sheet http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails Weighted-Average Shares - Narrative (Details) Details 77 false false R78.htm 9954518 - Disclosure - Loss (Recovery) from Fire (Details) Sheet http://www.cognex.com/role/LossRecoveryfromFireDetails Loss (Recovery) from Fire (Details) Details http://www.cognex.com/role/LossRecoveryfromFire 78 false false R79.htm 9954519 - Disclosure - Restructuring Charges (Details) Sheet http://www.cognex.com/role/RestructuringChargesDetails Restructuring Charges (Details) Details http://www.cognex.com/role/RestructuringChargesTables 79 false false R80.htm 9954520 - Disclosure - Subsequent Events (Details) Sheet http://www.cognex.com/role/SubsequentEventsDetails Subsequent Events (Details) Details http://www.cognex.com/role/SubsequentEvents 80 false false All Reports Book All Reports cgnx-20231001.htm cgnx-20231001.xsd cgnx-20231001_cal.xml cgnx-20231001_def.xml cgnx-20231001_lab.xml cgnx-20231001_pre.xml http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 98 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "cgnx-20231001.htm": { "nsprefix": "cgnx", "nsuri": "http://www.cognex.com/20231001", "dts": { "inline": { "local": [ "cgnx-20231001.htm" ] }, "schema": { "local": [ "cgnx-20231001.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/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/currency/2023/currency-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd" ] }, "calculationLink": { "local": [ "cgnx-20231001_cal.xml" ] }, "definitionLink": { "local": [ "cgnx-20231001_def.xml" ] }, "labelLink": { "local": [ "cgnx-20231001_lab.xml" ] }, "presentationLink": { "local": [ "cgnx-20231001_pre.xml" ] } }, "keyStandard": 314, "keyCustom": 37, "axisStandard": 25, "axisCustom": 0, "memberStandard": 50, "memberCustom": 19, "hidden": { "total": 9, "http://xbrl.sec.gov/dei/2023": 6, "http://fasb.org/us-gaap/2023": 3 }, "contextCount": 229, "entityCount": 1, "segmentCount": 71, "elementCount": 651, "unitCount": 16, "baseTaxonomies": { "http://xbrl.sec.gov/ecd/2023": 2, "http://fasb.org/us-gaap/2023": 958, "http://xbrl.sec.gov/dei/2023": 29 }, "report": { "R1": { "role": "http://www.cognex.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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.cognex.com/role/ConsolidatedStatementsofOperations", "longName": "0000002 - Statement - Consolidated Statements of Operations", "shortName": "Consolidated Statements of Operations", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R3": { "role": "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome", "longName": "0000003 - Statement - Consolidated Statements of Comprehensive Income", "shortName": "Consolidated Statements of Comprehensive Income", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R4": { "role": "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical", "longName": "0000004 - Statement - Consolidated Statements of Comprehensive Income (Parenthetical)", "shortName": "Consolidated Statements of Comprehensive Income (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": null }, "R5": { "role": "http://www.cognex.com/role/ConsolidatedBalanceSheets", "longName": "0000005 - Statement - Consolidated Balance Sheets", "shortName": "Consolidated Balance Sheets", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:AccountsReceivableNetCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R6": { "role": "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical", "longName": "0000006 - Statement - Consolidated Balance Sheets (Parenthetical)", "shortName": "Consolidated Balance Sheets (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:DebtSecuritiesAvailableForSaleAmortizedCostCurrent", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows", "longName": "0000007 - Statement - Consolidated Statements of Cash Flows", "shortName": "Consolidated Statements of Cash Flows", "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": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:StockOptionPlanExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R8": { "role": "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity", "longName": "0000008 - Statement - Consolidated Statement of Shareholders' Equity", "shortName": "Consolidated Statement of Shareholders' Equity", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "c-43", "name": "us-gaap:CommonStockSharesIssued", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-43", "name": "us-gaap:CommonStockSharesIssued", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical", "longName": "0000009 - Statement - Consolidated Statement of Shareholders' Equity (Parenthetical)", "shortName": "Consolidated Statement of Shareholders' Equity (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "9", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:CommonStockDividendsPerShareCashPaid", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": null }, "R10": { "role": "http://www.cognex.com/role/SummaryofSignificantAccountingPolicies", "longName": "0000010 - Disclosure - Summary of Significant Accounting Policies", "shortName": "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.cognex.com/role/NewPronouncements", "longName": "0000011 - Disclosure - New Pronouncements", "shortName": "New Pronouncements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.cognex.com/role/FairValueMeasurements", "longName": "0000012 - Disclosure - Fair Value Measurements", "shortName": "Fair Value Measurements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:FairValueDisclosuresTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestments", "longName": "0000013 - Disclosure - Cash, Cash Equivalents, and Investments", "shortName": "Cash, Cash Equivalents, and Investments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CashAndCashEquivalentsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.cognex.com/role/Inventories", "longName": "0000014 - Disclosure - Inventories", "shortName": "Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.cognex.com/role/Leases", "longName": "0000015 - Disclosure - Leases", "shortName": "Leases", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeasesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.cognex.com/role/Goodwill", "longName": "0000016 - Disclosure - Goodwill", "shortName": "Goodwill", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.cognex.com/role/IntangibleAssets", "longName": "0000017 - Disclosure - Intangible Assets", "shortName": "Intangible Assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.cognex.com/role/WarrantyObligations", "longName": "0000018 - Disclosure - Warranty Obligations", "shortName": "Warranty Obligations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ProductWarrantyDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ProductWarrantyDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.cognex.com/role/CommitmentandContingencies", "longName": "0000019 - Disclosure - Commitment and Contingencies", "shortName": "Commitment and Contingencies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.cognex.com/role/DerivativeInstruments", "longName": "0000020 - Disclosure - Derivative Instruments", "shortName": "Derivative Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.cognex.com/role/RevenueRecognition", "longName": "0000021 - Disclosure - Revenue Recognition", "shortName": "Revenue Recognition", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.cognex.com/role/StockBasedCompensationExpense", "longName": "0000022 - Disclosure - Stock-Based Compensation Expense", "shortName": "Stock-Based Compensation Expense", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareholdersEquityAndShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.cognex.com/role/StockRepurchaseProgram", "longName": "0000023 - Disclosure - Stock Repurchase Program", "shortName": "Stock Repurchase Program", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.cognex.com/role/IncomeTaxes", "longName": "0000024 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.cognex.com/role/WeightedAverageShares", "longName": "0000025 - Disclosure - Weighted-Average Shares", "shortName": "Weighted-Average Shares", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "25", "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.cognex.com/role/LossRecoveryfromFire", "longName": "0000026 - Disclosure - Loss (Recovery) from Fire", "shortName": "Loss (Recovery) from Fire", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "cgnx:LossRecoveryFromCatastropheTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cgnx:LossRecoveryFromCatastropheTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.cognex.com/role/RestructuringCharges", "longName": "0000027 - Disclosure - Restructuring Charges", "shortName": "Restructuring Charges", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.cognex.com/role/SubsequentEvents", "longName": "0000028 - Disclosure - Subsequent Events", "shortName": "Subsequent Events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R29": { "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": "29", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": null }, "R30": { "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": "30", "firstAnchor": { "contextRef": "c-3", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies", "longName": "9954471 - Disclosure - Summary of Significant Accounting Policies (Policies)", "shortName": "Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NewAccountingPronouncementsPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.cognex.com/role/FairValueMeasurementsTables", "longName": "9954472 - Disclosure - Fair Value Measurements (Tables)", "shortName": "Fair Value Measurements (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables", "longName": "9954473 - Disclosure - Cash, Cash Equivalents, and Investments (Tables)", "shortName": "Cash, Cash Equivalents, and Investments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "c-1", "name": "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.cognex.com/role/InventoriesTables", "longName": "9954474 - Disclosure - Inventories (Tables)", "shortName": "Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "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": "cgnx-20231001.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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.cognex.com/role/LeasesTables", "longName": "9954475 - Disclosure - Leases (Tables)", "shortName": "Leases (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.cognex.com/role/GoodwillTables", "longName": "9954476 - Disclosure - Goodwill (Tables)", "shortName": "Goodwill (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "36", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R37": { "role": "http://www.cognex.com/role/IntangibleAssetsTables", "longName": "9954477 - Disclosure - Intangible Assets (Tables)", "shortName": "Intangible Assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "37", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.cognex.com/role/WarrantyObligationsTables", "longName": "9954478 - Disclosure - Warranty Obligations (Tables)", "shortName": "Warranty Obligations (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "38", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.cognex.com/role/DerivativeInstrumentsTables", "longName": "9954479 - Disclosure - Derivative Instruments (Tables)", "shortName": "Derivative Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "39", "firstAnchor": { "contextRef": "c-1", "name": "cgnx:OutstandingForwardContractsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "cgnx:OutstandingForwardContractsTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.cognex.com/role/RevenueRecognitionTables", "longName": "9954480 - Disclosure - Revenue Recognition (Tables)", "shortName": "Revenue Recognition (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "40", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseTables", "longName": "9954481 - Disclosure - Stock-Based Compensation Expense (Tables)", "shortName": "Stock-Based Compensation Expense (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "41", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.cognex.com/role/WeightedAverageSharesTables", "longName": "9954482 - Disclosure - Weighted-Average Shares (Tables)", "shortName": "Weighted-Average Shares (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "42", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.cognex.com/role/RestructuringChargesTables", "longName": "9954483 - Disclosure - Restructuring Charges (Tables)", "shortName": "Restructuring Charges (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "43", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.cognex.com/role/FairValueMeasurementsDetails", "longName": "9954484 - Disclosure - Fair Value Measurements (Details)", "shortName": "Fair Value Measurements (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-51", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R45": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "longName": "9954485 - Disclosure - Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Components of Cash, Cash Equivalents, and Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:Cash", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:Cash", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails", "longName": "9954486 - Disclosure - Cash, Cash Equivalents, and Investments - Narrative (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-6", "name": "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "us-gaap:DebtSecuritiesAvailableForSaleAllowanceForCreditLoss", "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R47": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "longName": "9954487 - Disclosure - Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Summary of Available-for-Sale Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "longName": "9954488 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Gross Unrealized Losses and Fair Values for Available-for-Sale Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails", "longName": "9954489 - Disclosure - Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Gross Realized Gains and Losses on the Sale of Debt Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtSecuritiesAvailableForSaleRealizedGain", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RealizedGainLossOnInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:RealizedInvestmentGainsLosses", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RealizedGainLossOnInvestmentsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R50": { "role": "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "longName": "9954490 - Disclosure - Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)", "shortName": "Cash, Cash Equivalents, and Investments - Effective Maturity Dates of Available-for-Sale Investments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.cognex.com/role/InventoriesDetails", "longName": "9954491 - Disclosure - Inventories (Details)", "shortName": "Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "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": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "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": "cgnx-20231001.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.cognex.com/role/LeasesNarrativeDetails", "longName": "9954492 - Disclosure - Leases - Narrative (Details)", "shortName": "Leases - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:OperatingLeaseCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R53": { "role": "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails", "longName": "9954493 - Disclosure - Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)", "shortName": "Leases - Future Minimum Lease Payment Obligations Under Operating Leases (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c-2", "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": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "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": "cgnx-20231001.htm", "unique": true } }, "R54": { "role": "http://www.cognex.com/role/GoodwillDetails", "longName": "9954494 - Disclosure - Goodwill (Details)", "shortName": "Goodwill (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c-6", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R55": { "role": "http://www.cognex.com/role/IntangibleAssetsDetails", "longName": "9954495 - Disclosure - Intangible Assets (Details)", "shortName": "Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.cognex.com/role/WarrantyObligationsDetail", "longName": "9954496 - Disclosure - Warranty Obligations (Detail)", "shortName": "Warranty Obligations (Detail)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c-6", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-6", "name": "us-gaap:ProductWarrantyAccrual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R57": { "role": "http://www.cognex.com/role/CommitmentandContingenciesDetails", "longName": "9954497 - Disclosure - Commitment and Contingencies (Details)", "shortName": "Commitment and Contingencies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:PurchaseCommitmentRemainingMinimumAmountCommitted", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:PurchaseCommitmentRemainingMinimumAmountCommitted", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails", "longName": "9954498 - Disclosure - Derivative Instruments - Narrative (Details)", "shortName": "Derivative Instruments - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "c-106", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "jpy", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-106", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "jpy", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R59": { "role": "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails", "longName": "9954499 - Disclosure - Derivative Instruments - Outstanding Forward Contracts Table (Details)", "shortName": "Derivative Instruments - Outstanding Forward Contracts Table (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "c-108", "name": "us-gaap:DerivativeAssetNotionalAmount", "unitRef": "jpy", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:OutstandingForwardContractsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-108", "name": "us-gaap:DerivativeAssetNotionalAmount", "unitRef": "jpy", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "cgnx:OutstandingForwardContractsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R60": { "role": "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails", "longName": "9954500 - Disclosure - Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details)", "shortName": "Derivative Instruments - Schedule of Derivative Instruments in Statement of Financial Position, Fair Value (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:DerivativeAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:OffsettingAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-126", "name": "us-gaap:DerivativeAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R61": { "role": "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails", "longName": "9954501 - Disclosure - Derivative Instruments - Offsetting Assets (Details)", "shortName": "Derivative Instruments - Offsetting Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:DerivativeFairValueOfDerivativeAsset", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:OffsettingAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:DerivativeFairValueOfDerivativeAsset", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:OffsettingAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R62": { "role": "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails", "longName": "9954502 - Disclosure - Derivative Instruments - Derivative Instruments, Gain (Loss) (Details)", "shortName": "Derivative Instruments - Derivative Instruments, Gain (Loss) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "c-128", "name": "us-gaap:DerivativeGainLossOnDerivativeNet", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": null }, "R63": { "role": "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails", "longName": "9954503 - Disclosure - Revenue Recognition - Revenue Disaggregated by Geography (Details)", "shortName": "Revenue Recognition - Revenue Disaggregated by Geography (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "63", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-131", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R64": { "role": "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails", "longName": "9954504 - Disclosure - Revenue Recognition - Revenue Disaggregated by Products and Services (Details)", "shortName": "Revenue Recognition - Revenue Disaggregated by Products and Services (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "64", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-147", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R65": { "role": "http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails", "longName": "9954505 - Disclosure - Revenue Recognition - Additional Information (Details)", "shortName": "Revenue Recognition - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "65", "firstAnchor": { "contextRef": "c-2", "name": "us-gaap:CapitalizedContractCostGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-2", "name": "us-gaap:CapitalizedContractCostGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R66": { "role": "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails", "longName": "9954506 - Disclosure - Revenue Recognition - Schedule of Allowance for Credit Loss (Details)", "shortName": "Revenue Recognition - Schedule of Allowance for Credit Loss (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "66", "firstAnchor": { "contextRef": "c-6", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-6", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R67": { "role": "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails", "longName": "9954507 - Disclosure - Revenue Recognition - Deferred Revenue Activity (Details)", "shortName": "Revenue Recognition - Deferred Revenue Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "67", "firstAnchor": { "contextRef": "c-6", "name": "us-gaap:DeferredRevenue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DeferredRevenueByArrangementDisclosureTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-6", "name": "us-gaap:DeferredRevenue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DeferredRevenueByArrangementDisclosureTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R68": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "longName": "9954508 - Disclosure - Stock-Based Compensation Expense - Narrative (Details)", "shortName": "Stock-Based Compensation Expense - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "68", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R69": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails", "longName": "9954509 - Disclosure - Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)", "shortName": "Stock-Based Compensation Expense - Summary of Stock Option Activity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "69", "firstAnchor": { "contextRef": "c-6", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-6", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R70": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails", "longName": "9954510 - Disclosure - Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)", "shortName": "Stock-Based Compensation Expense - Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "70", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R71": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "longName": "9954511 - Disclosure - Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details)", "shortName": "Stock-Based Compensation Expense - Schedule of Restricted Stock Units (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "71", "firstAnchor": { "contextRef": "c-166", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-166", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R72": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "longName": "9954512 - Disclosure - Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details)", "shortName": "Stock-Based Compensation Expense - Schedule of Performance Restricted Stock Units (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "72", "firstAnchor": { "contextRef": "c-172", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-172", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R73": { "role": "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails", "longName": "9954513 - Disclosure - Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details)", "shortName": "Stock-Based Compensation Expense - Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "73", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-177", "name": "us-gaap:AllocatedShareBasedCompensationExpense", "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": "cgnx-20231001.htm", "unique": true } }, "R74": { "role": "http://www.cognex.com/role/StockRepurchaseProgramDetails", "longName": "9954514 - Disclosure - Stock Repurchase Program (Details)", "shortName": "Stock Repurchase Program (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "74", "firstAnchor": { "contextRef": "c-189", "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-189", "name": "us-gaap:StockRepurchaseProgramAuthorizedAmount1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R75": { "role": "http://www.cognex.com/role/IncomeTaxesDetails", "longName": "9954515 - Disclosure - Income Taxes (Details)", "shortName": "Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "75", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "2", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R76": { "role": "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails", "longName": "9954516 - Disclosure - Weighted-Average Shares - Calculation of Weighted-Average Shares (Details)", "shortName": "Weighted-Average Shares - Calculation of Weighted-Average Shares (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "76", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "unique": true } }, "R77": { "role": "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails", "longName": "9954517 - Disclosure - Weighted-Average Shares - Narrative (Details)", "shortName": "Weighted-Average Shares - Narrative (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "77", "firstAnchor": { "contextRef": "c-199", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-199", "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R78": { "role": "http://www.cognex.com/role/LossRecoveryfromFireDetails", "longName": "9954518 - Disclosure - Loss (Recovery) from Fire (Details)", "shortName": "Loss (Recovery) from Fire (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "78", "firstAnchor": { "contextRef": "c-211", "name": "us-gaap:LossFromCatastrophes", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-211", "name": "us-gaap:LossFromCatastrophes", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R79": { "role": "http://www.cognex.com/role/RestructuringChargesDetails", "longName": "9954519 - Disclosure - Restructuring Charges (Details)", "shortName": "Restructuring Charges (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "79", "firstAnchor": { "contextRef": "c-221", "name": "us-gaap:RestructuringReserve", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-221", "name": "us-gaap:RestructuringReserve", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } }, "R80": { "role": "http://www.cognex.com/role/SubsequentEventsDetails", "longName": "9954520 - Disclosure - Subsequent Events (Details)", "shortName": "Subsequent Events (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "80", "firstAnchor": { "contextRef": "c-229", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-229", "name": "us-gaap:CommonStockDividendsPerShareDeclared", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "cgnx-20231001.htm", "first": true, "unique": true } } }, "tag": { "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterThreeYearsBeforeFourYearsFairValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "3-4 Years", "label": "Available For Sale Securities Debt Maturities After Three Years Before Four Years Fair Value", "documentation": "Available-for-sale securities, debt maturities after third year but before fourth year, fair value." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/CommitmentandContingencies" ], "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": [ "r119", "r319", "r320", "r689", "r884" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return", "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]" } } }, "auth_ref": [ "r800" ] }, "cgnx_NonCurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "NonCurrentAssetsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current assets", "label": "Non-current Assets [Member]", "documentation": "Non-current Assets" } } }, "auth_ref": [] }, "us-gaap_DividendsCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCash", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payment of dividends", "label": "Dividends, Cash", "documentation": "Amount of paid and unpaid cash dividends declared for classes of stock, for example, but not limited to, common and preferred." } } }, "auth_ref": [ "r8", "r121" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Measure Name" } } }, "auth_ref": [ "r797" ] }, "currency_AllCurrenciesDomain": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "AllCurrenciesDomain", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "All Currencies [Domain]", "label": "All Currencies [Domain]" } } }, "auth_ref": [] }, "us-gaap_DerivativeAssetNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeAssetNotionalAmount", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding forward contracts", "label": "Derivative Asset, Notional Amount", "documentation": "Nominal or face amount used to calculate payments on the derivative asset." } } }, "auth_ref": [ "r666", "r669", "r672", "r675", "r918", "r919", "r920" ] }, "cgnx_IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "IncreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in compensation expense due to revised estimated forfeiture rates", "label": "Increase In Compensation Expense Due To Revised Estimated Forfeiture Rates", "documentation": "Increase (decrease) in compensation expense due to revised estimated forfeiture rates." } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current operating lease liabilities", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r493" ] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/Inventories" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories", "label": "Inventory Disclosure [Text Block]", "documentation": "The entire disclosure for inventory. Includes, but is not limited to, the basis of stating inventory, the method of determining inventory cost, the classes of inventory, and the nature of the cost elements included in inventory." } } }, "auth_ref": [ "r295" ] }, "us-gaap_ShareRepurchaseProgramAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramAxis", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Axis]", "label": "Share Repurchase Program [Axis]", "documentation": "Information by share repurchase program." } } }, "auth_ref": [] }, "cgnx_DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "DistributionRightsDevelopedTechnologyRightsCustomerContractsAndRelationshipsOtherIntangibleAssetsAndTrademarksMember", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-lived intangible asset excluding in-process technologies", "label": "Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member]", "documentation": "Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks [Member]" } } }, "auth_ref": [] }, "cgnx_A27000SquareFootPremisesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "A27000SquareFootPremisesMember", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "27,000 square-foot premises", "label": "27,000 Square-Foot Premises [Member]", "documentation": "27,000 Square-Foot Premises" } } }, "auth_ref": [] }, "us-gaap_InvestmentTypeCategorizationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentTypeCategorizationMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investments [Domain]", "label": "Investments [Domain]", "documentation": "Asset obtained to generate income or appreciate in value." } } }, "auth_ref": [ "r592", "r594", "r595", "r598", "r601", "r657", "r659", "r661", "r664", "r665", "r678", "r679", "r681", "r682", "r683", "r684", "r685", "r746" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Valuation Assumption Difference, Footnote", "label": "Equity Valuation Assumption Difference, Footnote [Text Block]" } } }, "auth_ref": [ "r799" ] }, "cgnx_TaxYearsOpenToExaminationByInternalRevenueService": { "xbrltype": "stringItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "TaxYearsOpenToExaminationByInternalRevenueService", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax years open to examination by Internal Revenue Service", "label": "Tax Years Open To Examination By Internal Revenue Service", "documentation": "Tax Years Open To Examination By Internal Revenue Service" } } }, "auth_ref": [] }, "cgnx_CognexCorporation2021And2007StockOptionAndIncentivePlansMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CognexCorporation2021And2007StockOptionAndIncentivePlansMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2001 Plan and 2007 Plan", "label": "Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans [Member]", "documentation": "Cognex Corporation 2021 And 2007 Stock Option And Incentive Plans" } } }, "auth_ref": [] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined", "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]" } } }, "auth_ref": [ "r766", "r777", "r787", "r812" ] }, "cgnx_OutstandingForwardContractsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "OutstandingForwardContractsTableTextBlock", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding Forward Contracts Table", "label": "Outstanding Forward Contracts [Table Text Block]", "documentation": "Outstanding forward contracts table." } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contract with Customer [Abstract]", "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "cgnx_ExpirationPeriodOfStockOptionPlan": { "xbrltype": "durationItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ExpirationPeriodOfStockOptionPlan", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expiration period from grant day", "label": "Expiration Period Of Stock Option Plan", "documentation": "Expiration period of stock option plan." } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.cognex.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": [ "r146", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r376" ] }, "cgnx_SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "SharesBasedCompensationArrangementBySharesBasedPaymentAwardOptionsExercisableIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total intrinsic value", "label": "Shares Based Compensation Arrangement By Shares Based Payment Award Options Exercisable Intrinsic Value", "documentation": "Shares based compensation arrangement by shares based payment award options exercisable intrinsic value." } } }, "auth_ref": [] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Other Performance Measure, Amount", "label": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r797" ] }, "currency_SGD": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "SGD", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Singapore Dollar", "label": "Singapore, Dollars" } } }, "auth_ref": [] }, "cgnx_GeneralStockOptionPlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "GeneralStockOptionPlanMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "General Stock Option Plan", "label": "General Stock Option Plan [Member]", "documentation": "General stock option plan." } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r150", "r161", "r185", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r443", "r445", "r473", "r741", "r887", "r888", "r927" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails", "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]" } } }, "auth_ref": [ "r232", "r233", "r593", "r597", "r599", "r659", "r661", "r665", "r681", "r688", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r703", "r726", "r746", "r890", "r938" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "ASSETS", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DeferredRevenueAdditions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueAdditions", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferral of revenue billed in the current period, net of recognition", "label": "Deferred Revenue, Additions", "documentation": "Amount of deferred revenue recognized for transactions arising during the current reporting period. Deferred revenue is a liability as of the balance sheet date related to a revenue producing activity for which revenue has not yet been recognized. Generally, an Entity records deferred revenue when it receives consideration from a customer before achieving certain criteria that must be met for revenue to be recognized in conformity with GAAP." } } }, "auth_ref": [] }, "cgnx_RepurchaseProgramMarch2020Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "RepurchaseProgramMarch2020Member", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Repurchase Program March 2020", "label": "Repurchase Program March 2020 [Member]", "documentation": "Repurchase Program March 2020 [Member]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTable", "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": [ "r58" ] }, "cgnx_LossFromCatastrophesInventoryWriteDownAndImpairmentOfOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LossFromCatastrophesInventoryWriteDownAndImpairmentOfOtherAssets", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Loss from fire, inventories and other assets", "label": "Loss From Catastrophes, Inventory Write Down And Impairment Of Other Assets", "documentation": "Loss From Catastrophes, Inventory Write Down And Impairment Of Other Assets" } } }, "auth_ref": [] }, "cgnx_LossRecoveryFromCatastropheTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LossRecoveryFromCatastropheTextBlock", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFire" ], "lang": { "en-us": { "role": { "terseLabel": "Loss (Recovery) from Fire", "label": "Loss (Recovery) From Catastrophe [Text Block]", "documentation": "Loss (Recovery) From Catastrophe" } } }, "auth_ref": [] }, "us-gaap_MaximumRemainingMaturityOfForeignCurrencyDerivatives1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MaximumRemainingMaturityOfForeignCurrencyDerivatives1", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining maturity of foreign currency derivatives (up to)", "label": "Maximum Remaining Maturity of Foreign Currency Derivatives", "documentation": "Maximum amount of time remaining before foreign currency exchange rate derivatives mature or expire, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": [ "r117" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": [ "r117" ] }, "cgnx_AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AccountsReceivableAllowanceForCreditLossForeignExchangeRateIncreaseDecrease", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign exchange rate changes", "label": "Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease)", "documentation": "Accounts Receivable, Allowance For Credit Loss, Foreign Exchange Rate Increase (Decrease)" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets:", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": [ "r117" ] }, "cgnx_AsiaExcludingChinaMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AsiaExcludingChinaMember", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Asia", "label": "Asia, Excluding China [Member]", "documentation": "Asia, Excluding China [Member]" } } }, "auth_ref": [] }, "us-gaap_FairValueMeasurementFrequencyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementFrequencyDomain", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Frequency [Domain]", "label": "Measurement Frequency [Domain]", "documentation": "Measurement frequency." } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized 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": [ "r117" ] }, "us-gaap_PlanNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameAxis", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Axis]", "label": "Plan Name [Axis]", "documentation": "Information by plan name for share-based payment arrangement." } } }, "auth_ref": [ "r891", "r892", "r893", "r894", "r895", "r896", "r897", "r898", "r899", "r900", "r901", "r902", "r903", "r904", "r905", "r906", "r907", "r908", "r909", "r910", "r911", "r912", "r913", "r914", "r915", "r916" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Domain]", "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r346", "r378", "r379", "r380", "r381", "r382", "r383", "r510", "r511", "r512", "r722", "r723", "r732", "r733", "r734" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFive", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Five", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r117" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events [Abstract]", "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InvestmentIncomeNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentIncomeNonoperating", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Investment income", "label": "Investment Income, Nonoperating", "documentation": "The aggregate amount of income from investments (for example, dividends) not considered a component of the entity's core operations." } } }, "auth_ref": [ "r105" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseAfterYearFive", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Finite-Lived Intangible Asset, Expected Amortization, after Year Five", "documentation": "Amount of amortization for asset, excluding financial asset and goodwill, lacking physical substance with finite life expected to be recognized after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "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": [ "r187", "r188", "r189", "r218", "r539", "r584", "r590", "r604", "r605", "r606", "r607", "r608", "r609", "r612", "r615", "r616", "r617", "r618", "r619", "r621", "r622", "r623", "r624", "r626", "r627", "r628", "r629", "r630", "r632", "r634", "r635", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r646", "r647", "r648", "r652", "r747" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting period for stock option plans", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r738" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Remainder of fiscal 2023", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year." } } }, "auth_ref": [] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payment of dividends", "label": "Payments of Ordinary Dividends, Common Stock", "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity." } } }, "auth_ref": [ "r39" ] }, "cgnx_CognexCorporation2023StockOptionAndIncentivePlanMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CognexCorporation2023StockOptionAndIncentivePlanMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2023 Plan", "label": "Cognex Corporation 2023 Stock Option And Incentive Plan [Member]", "documentation": "Cognex Corporation 2023 Stock Option And Incentive Plan" } } }, "auth_ref": [] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount", "label": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r765", "r776", "r786", "r811" ] }, "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterTwoYearsBeforeThreeYearsFairValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2-3 Years", "label": "Available For Sale Securities Debt Maturities After Two Years Before Three Years Fair Value", "documentation": "Available-for-sale securities, debt maturities after second year but before third year, fair value." } } }, "auth_ref": [] }, "us-gaap_ShareRepurchaseProgramDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareRepurchaseProgramDomain", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Domain]", "label": "Share Repurchase Program [Domain]", "documentation": "Name of the share repurchase program." } } }, "auth_ref": [] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment To PEO Compensation, Footnote", "label": "Adjustment To PEO Compensation, Footnote [Text Block]" } } }, "auth_ref": [ "r798" ] }, "cgnx_RepurchaseProgramMarch2022Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "RepurchaseProgramMarch2022Member", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Repurchase Program March 2022", "label": "Repurchase Program March 2022 [Member]", "documentation": "Repurchase Program March 2022" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "presentation": [ "http://www.cognex.com/role/RestructuringChargesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Activity in Restructuring Reserve", "label": "Schedule of Restructuring Reserve by Type of Cost [Table Text Block]", "documentation": "Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period." } } }, "auth_ref": [ "r49", "r50" ] }, "us-gaap_DeferredRevenueByArrangementDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueByArrangementDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred Revenue, by Arrangement, Disclosure", "label": "Deferred Revenue, by Arrangement, Disclosure [Table Text Block]", "documentation": "Tabular disclosure of the type of arrangements and the corresponding amounts that comprise the current and noncurrent balance of deferred revenue as of the balance sheet date." } } }, "auth_ref": [] }, "cgnx_CurrencytranslationadjustmentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CurrencytranslationadjustmentsAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation adjustments:", "label": "Currency translation adjustments [Abstract]", "documentation": "Currency translation adjustments [Abstract]" } } }, "auth_ref": [] }, "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract": { "xbrltype": "stringItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1Abstract", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Intrinsic Value (in\u00a0thousands)", "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Additional Disclosures1 [Abstract]", "documentation": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosures1 [Abstract]" } } }, "auth_ref": [] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Issuers, Footnote", "label": "Peer Group Issuers, Footnote [Text Block]" } } }, "auth_ref": [ "r796" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote", "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]" } } }, "auth_ref": [ "r798" ] }, "cgnx_NonCashLossFromCatastrophes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "NonCashLossFromCatastrophes", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Non-cash impact of write-offs related to fire (Note 17)", "label": "Non-cash, Loss from Catastrophes", "documentation": "Non-cash, Loss from Catastrophes" } } }, "auth_ref": [] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Named Executive Officers, Footnote", "label": "Named Executive Officers, Footnote [Text Block]" } } }, "auth_ref": [ "r798" ] }, "us-gaap_LongTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermInvestments", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 }, "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": "cgnx_CashCashEquivalentsShortTermAndLongTermInvestments", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current investments, amortized cost of $349,060 and $476,148 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022", "verboseLabel": "Non-current investments", "label": "Long-Term Investments", "documentation": "The total amount of investments that are intended to be held for an extended period of time (longer than one operating cycle)." } } }, "auth_ref": [ "r153" ] }, "cgnx_ExcessAndObsoleteInventoryCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ExcessAndObsoleteInventoryCharges", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Excess and obsolete inventory charges", "label": "Excess and Obsolete Inventory Charges", "documentation": "Excess and Obsolete Inventory Charges" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Employee Service Share-based Compensation, Allocation of Recognized Period Costs", "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": [ "r58" ] }, "cgnx_CustomerContractsAndRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CustomerContractsAndRelationshipsMember", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Customer relationships", "label": "Customer Contracts And Relationships [Member]", "documentation": "Customer Contracts And Relationships [Member]" } } }, "auth_ref": [] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails", "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]" } } }, "auth_ref": [ "r232", "r233", "r593", "r597", "r599", "r659", "r661", "r665", "r681", "r690", "r691", "r692", "r693", "r694", "r695", "r696", "r697", "r698", "r703", "r726", "r746", "r890", "r938" ] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Changed Peer Group, Footnote", "label": "Changed Peer Group, Footnote [Text Block]" } } }, "auth_ref": [ "r796" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Name", "label": "PEO Name" } } }, "auth_ref": [ "r798" ] }, "cgnx_AgencyBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AgencyBondsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Agency bonds", "label": "Agency Bonds [Member]", "documentation": "Agency bond." } } }, "auth_ref": [] }, "us-gaap_CapitalizedContractCostGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CapitalizedContractCostGross", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Costs to fulfill contract", "label": "Capitalized Contract Cost, Gross", "documentation": "Amount, before accumulated amortization and accumulated impairment loss, of asset recognized from cost incurred to obtain or fulfill contract with customer." } } }, "auth_ref": [ "r869" ] }, "us-gaap_PlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PlanNameDomain", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Plan Name [Domain]", "label": "Plan Name [Domain]", "documentation": "Plan name for share-based payment arrangement." } } }, "auth_ref": [ "r891", "r892", "r893", "r894", "r895", "r896", "r897", "r898", "r899", "r900", "r901", "r902", "r903", "r904", "r905", "r906", "r907", "r908", "r909", "r910", "r911", "r912", "r913", "r914", "r915", "r916" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Company Selected Measure", "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]" } } }, "auth_ref": [ "r802" ] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Securities, Available-for-sale", "label": "Debt Securities, Available-for-Sale [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": [ "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Price or TSR Estimation Method", "label": "Stock Price or TSR Estimation Method [Text Block]" } } }, "auth_ref": [ "r764", "r775", "r785", "r810" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Other 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": [ "r31" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedLossBeforeTax", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gross 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": [ "r244" ] }, "us-gaap_CorporateBondSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateBondSecuritiesMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Corporate bonds", "label": "Corporate Bond Securities [Member]", "documentation": "This category includes information about long-term debt securities that are issued by either a domestic or foreign corporate business entity with a date certain promise of repayment and a return to the holder for the time value of money (for example, variable or fixed interest, original issue discount)." } } }, "auth_ref": [] }, "cgnx_CurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CurrentAssetsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Current assets", "label": "Current Assets [Member]", "documentation": "Current Assets" } } }, "auth_ref": [] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r87" ] }, "us-gaap_BusinessAcquisitionEffectiveDateOfAcquisition1": { "xbrltype": "dateItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionEffectiveDateOfAcquisition1", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Effective Date of Acquisition", "label": "Business Acquisition, Effective Date of Acquisition", "documentation": "Date when the acquirer obtains control of the acquiree, in YYYY-MM-DD format." } } }, "auth_ref": [ "r1", "r2", "r20" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Measure:", "label": "Measure [Axis]" } } }, "auth_ref": [ "r797" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Net Income", "label": "Compensation Actually Paid vs. Net Income [Text Block]" } } }, "auth_ref": [ "r801" ] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Amount", "label": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r796" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "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": [ "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413" ] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.cognex.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": [ "r830" ] }, "cgnx_EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement": { "xbrltype": "percentItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EstimatedForfeitureRateForUnvestedOptionsForSeniorManagement", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated annual forfeiture rate for unvested options for senior management", "label": "Estimated Forfeiture Rate For Unvested Options For Senior Management", "documentation": "Estimated forfeiture rate for unvested options for senior management." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.cognex.com/role/GoodwillTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Goodwill", "label": "Schedule of Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r717", "r870", "r871", "r872", "r873", "r874", "r875", "r876", "r877", "r878", "r879", "r880" ] }, "us-gaap_LesseeLeaseDescriptionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionTable", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lessee, Lease, Description [Table]", "label": "Lessee, Lease, Description [Table]", "documentation": "Disclosure of information about lessee's leases." } } }, "auth_ref": [ "r495" ] }, "cgnx_EstimatedForfeitureRateForUnvestedOptionsForCEO": { "xbrltype": "pureItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EstimatedForfeitureRateForUnvestedOptionsForCEO", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated forfeiture rate for unvested options for CEO", "label": "Estimated Forfeiture Rate for Unvested Options for CEO", "documentation": "Estimated Forfeiture Rate for Unvested Options for CEO" } } }, "auth_ref": [] }, "us-gaap_OtherIntangibleAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherIntangibleAssetsMember", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Non-compete agreements", "label": "Other Intangible Assets [Member]", "documentation": "Intangible assets classified as other." } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAccumulatedGrossUnrealizedGainBeforeTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross 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": [ "r243" ] }, "cgnx_LesseeOperatingLeaseComponents": { "xbrltype": "integerItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LesseeOperatingLeaseComponents", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lease components", "label": "Lessee, Operating Lease, Components", "documentation": "Lessee, Operating Lease, Components" } } }, "auth_ref": [] }, "us-gaap_LesseeLeaseDescriptionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeLeaseDescriptionLineItems", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lessee, Lease, Description [Line Items]", "label": "Lessee, Lease, Description [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r495" ] }, "country_CN": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "CN", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Greater China", "label": "CHINA" } } }, "auth_ref": [] }, "cgnx_EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EffectiveIncomeTaxRateReconciliationDiscreteTaxExpenseBenefitAmount", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Discrete tax expense (benefit)", "label": "Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount", "documentation": "Effective Income Tax Rate Reconciliation, Discrete Tax Expense (Benefit) , Amount" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfCashAndCashEquivalentsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfCashAndCashEquivalentsTable", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Cash and Cash Equivalents [Table]", "label": "Schedule of Cash and Cash Equivalents [Table]", "documentation": "Schedule of cash and cash equivalent balances. This table excludes restricted cash balances." } } }, "auth_ref": [] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Vs Peer Group", "label": "Total Shareholder Return Vs Peer Group [Text Block]" } } }, "auth_ref": [ "r803" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriod", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Forfeited or expired (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period", "documentation": "For presentations that combine terminations, the number of shares under options that were cancelled during the reporting period as a result of occurrence of a terminating event specified in contractual agreements pertaining to the stock option plan or that expired." } } }, "auth_ref": [ "r897" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "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": [ "r374", "r725", "r726", "r727", "r728", "r729", "r730", "r731" ] }, "us-gaap_IncomeTaxAuthorityNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameDomain", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority, Name [Domain]", "label": "Income Tax Authority, Name [Domain]", "documentation": "Named agency, division or body that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyContractAssetFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyContractAssetFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Economic hedge forward contracts", "label": "Foreign Currency Contract, Asset, Fair Value Disclosure", "documentation": "Fair value portion of asset contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward contracts, and swaps." } } }, "auth_ref": [] }, "us-gaap_AccruedIncomeTaxesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedIncomeTaxesCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued income taxes", "label": "Accrued Income Taxes, Current", "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all currently due domestic and foreign income tax obligations." } } }, "auth_ref": [ "r83", "r131" ] }, "us-gaap_DomesticCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DomesticCountryMember", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Domestic Tax Authority", "label": "Domestic Tax Authority [Member]", "documentation": "Designated tax department of the government that is entitled to levy and collect income taxes from the entity in its country of domicile." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxAssetsNet", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income taxes", "label": "Deferred Income Tax Assets, Net", "documentation": "Amount, after allocation of valuation allowances and deferred tax liability, of deferred tax asset attributable to deductible differences and carryforwards, with jurisdictional netting." } } }, "auth_ref": [ "r422", "r423" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsForfeituresAndExpirationsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Forfeited or expired (in dollars per shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Forfeitures and Expirations in Period, Weighted Average Exercise Price", "documentation": "Weighted average price of options that were either forfeited or expired." } } }, "auth_ref": [ "r897" ] }, "us-gaap_ForeignExchangeForwardMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignExchangeForwardMember", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Exchange Forward", "label": "Foreign Exchange Forward [Member]", "documentation": "Foreign exchange forward traded on an exchange (examples include but are not limited to the International Securities Exchange, Philadelphia Stock Exchange, or the Chicago Mercantile Exchange) for options or future contracts to buy or sell a certain currency, at a specified date, at a fixed exercise exchange rate." } } }, "auth_ref": [ "r618", "r623", "r628", "r641", "r647", "r671", "r672", "r673", "r746" ] }, "us-gaap_CashAndCashEquivalentsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsLineItems", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents [Line Items]", "label": "Cash and Cash Equivalents [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "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": [ "r385", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413" ] }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PrepaidExpenseAndOtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "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": [ "r845" ] }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/DerivativeInstruments" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments", "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]", "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts." } } }, "auth_ref": [ "r129", "r448", "r456" ] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Contract [Domain]", "label": "Derivative Contract [Domain]", "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset." } } }, "auth_ref": [ "r600", "r603", "r617", "r618", "r619", "r621", "r622", "r623", "r624", "r626", "r627", "r628", "r629", "r639", "r640", "r641", "r642", "r645", "r646", "r647", "r648", "r666", "r667", "r673", "r676", "r744", "r746" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Repurchase of common stock", "label": "Stock Repurchased During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r18", "r86", "r87", "r121", "r588", "r652", "r686", "r753" ] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "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": [ "r18", "r147", "r175", "r176", "r177", "r187", "r188", "r189", "r193", "r201", "r203", "r218", "r272", "r275", "r362", "r416", "r417", "r418", "r430", "r431", "r449", "r450", "r451", "r452", "r453", "r455", "r459", "r482", "r483", "r484", "r485", "r486", "r487", "r502", "r576", "r577", "r578", "r588", "r652" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "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": [ "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413" ] }, "us-gaap_ForeignCountryMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCountryMember", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Tax Authority", "label": "Foreign Tax Authority [Member]", "documentation": "Designated tax departments of governments entitled to levy and collect income taxes from the entity outside the entity's country of domicile." } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustments to reconcile net income to net cash provided by (used in) operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "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": [ "r385", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-average common and common-equivalent shares outstanding:", "label": "Weighted Average Number of Shares Outstanding, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments, Gain (Loss)", "label": "Derivative Instruments, Gain (Loss) [Table Text Block]", "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments." } } }, "auth_ref": [ "r69", "r74", "r447" ] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Repurchase of common stock (in shares)", "label": "Stock Repurchased During Period, Shares", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r18", "r86", "r87", "r121", "r585", "r652", "r686" ] }, "us-gaap_AccruedIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedIncomeTaxes", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current accrued income taxes", "label": "Accrued Income Taxes", "documentation": "Carrying amount as of the balance sheet date of the unpaid sum of the known and estimated amounts payable to satisfy all domestic and foreign income tax obligations due. This amount is the total of current and noncurrent accrued income taxes." } } }, "auth_ref": [ "r83", "r84", "r125", "r131", "r554" ] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Axis]", "label": "Income Statement Location [Axis]", "documentation": "Information by location in the income statement." } } }, "auth_ref": [ "r306", "r311", "r636" ] }, "us-gaap_DerivativeInstrumentsGainLossLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsGainLossLineItems", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments, Gain (Loss) [Line Items]", "label": "Derivative Instruments, Gain (Loss) [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": [ "r447" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "AmendmentFlag", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_DerivativeLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeLiabilities", "crdr": "credit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails", "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative liability", "totalLabel": "Net amount of liabilities presented", "label": "Derivative Liability", "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities not subject to a master netting arrangement and not elected to be offset." } } }, "auth_ref": [ "r163", "r165", "r472", "r591", "r592", "r593", "r595", "r598", "r599", "r600", "r602", "r603", "r626", "r628", "r629", "r667", "r668", "r670", "r673", "r674", "r676", "r677", "r710", "r940" ] }, "us-gaap_PaymentsToAcquireBusinessesGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireBusinessesGross", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Payments to Acquire Businesses, Gross", "label": "Payments to Acquire Businesses, Gross", "documentation": "The cash outflow associated with the acquisition of business during the period. The cash portion only of the acquisition price." } } }, "auth_ref": [ "r38", "r442" ] }, "us-gaap_RevenueCommissionersIrelandMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueCommissionersIrelandMember", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Ireland", "label": "Revenue Commissioners, Ireland [Member]", "documentation": "Designated tax department of the government of Ireland." } } }, "auth_ref": [] }, "us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsGainLossByHedgingRelationshipByIncomeStatementLocationByDerivativeInstrumentRiskTable", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments, Gain (Loss) [Table]", "label": "Derivative Instruments, Gain (Loss) [Table]", "documentation": "Disclosure of information about the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments." } } }, "auth_ref": [ "r19", "r69", "r74", "r75", "r78", "r79", "r447" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Domain]", "label": "Income Statement Location [Domain]", "documentation": "Location in the income statement." } } }, "auth_ref": [ "r311", "r636" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventMember", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r488", "r505" ] }, "us-gaap_EntityWideInformationRevenueFromExternalCustomerLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EntityWideInformationRevenueFromExternalCustomerLineItems", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from External Customer [Line Items]", "label": "Revenue from External Customer [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_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTextBlock", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from External Customers by Products and Services", "label": "Revenue from External Customers by Products and Services [Table Text Block]", "documentation": "Tabular disclosure of entity-wide revenues from external customers for each product or service or each group of similar products or services if the information is not provided as part of the reportable operating segment information." } } }, "auth_ref": [ "r43" ] }, "us-gaap_NetRentableArea": { "xbrltype": "areaItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetRentableArea", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Rentable area", "label": "Net Rentable Area", "documentation": "Net rentable area for properties owned." } } }, "auth_ref": [] }, "us-gaap_DerivativeLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeLineItems", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative [Line Items]", "label": "Derivative [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": [ "r456" ] }, "us-gaap_OffsettingAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OffsettingAssetsTableTextBlock", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Offsetting Assets", "label": "Offsetting Assets [Table Text Block]", "documentation": "Tabular disclosure of derivative and other financial assets that are subject to offsetting, including master netting arrangements." } } }, "auth_ref": [ "r96", "r164" ] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_DerivativeTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeTable", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative [Table]", "label": "Derivative [Table]", "documentation": "Schedule that describes and identifies a derivative or group of derivatives on a disaggregated basis, such as for individual instruments, or small groups of similar instruments. May include a combination of the type of instrument, risks being hedged, notional amount, hedge designation, related hedged item, inception date, maturity date, or other relevant item." } } }, "auth_ref": [ "r19", "r64", "r65", "r66", "r67", "r70", "r74", "r76", "r77", "r79", "r456" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenue", "label": "Cost of Goods and Services Sold", "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities." } } }, "auth_ref": [ "r102", "r539" ] }, "us-gaap_AccountsReceivableNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableNetCurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts receivable, allowance for credit losses of $580 and $730 in 2023 and 2022, respectively", "label": "Accounts Receivable, after Allowance for Credit Loss, Current", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business, classified as current." } } }, "auth_ref": [ "r235", "r236" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_AccretionAmortizationOfDiscountsAndPremiumsInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccretionAmortizationOfDiscountsAndPremiumsInvestments", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Amortization of discounts or premiums on investments", "label": "Accretion (Amortization) of Discounts and Premiums, Investments", "documentation": "The sum of the periodic adjustments of the differences between securities' face values and purchase prices that are charged against earnings. This is called accretion if the security was purchased at a discount and amortization if it was purchased at premium. As a noncash item, this element is an adjustment to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r112" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfAdditionalSharesAuthorized", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional shares available for grant under stock option plans (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Additional Shares Authorized", "documentation": "Number of additional shares authorized for issuance under share-based payment arrangement." } } }, "auth_ref": [] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Employee Stock Option", "label": "Employee Stock 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": [] }, "us-gaap_PaymentsForRestructuring": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRestructuring", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Cash payments", "label": "Payments for Restructuring", "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation." } } }, "auth_ref": [ "r310", "r849" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Retained earnings", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r89", "r121", "r559", "r579", "r583", "r586", "r613", "r741" ] }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresTable", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Table]", "label": "Derivative Instruments and Hedging Activities Disclosures [Table]", "documentation": "Disclosure of information about derivatives and hedging activities." } } }, "auth_ref": [] }, "us-gaap_InvestmentTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentTypeAxis", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Investment Type [Axis]", "label": "Investment Type [Axis]", "documentation": "Information by type of investments." } } }, "auth_ref": [ "r592", "r594", "r595", "r598", "r601", "r657", "r659", "r661", "r664", "r665", "r678", "r679", "r681", "r682", "r683", "r684", "r685", "r746" ] }, "us-gaap_StateAdministrationOfTaxationChinaMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StateAdministrationOfTaxationChinaMember", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "China", "label": "State Administration of Taxation, China [Member]", "documentation": "Designated tax department of the government of China." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxLiabilitiesNet", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred income taxes", "label": "Deferred Income Tax Liabilities, Net", "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting." } } }, "auth_ref": [ "r422", "r423", "r555" ] }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "documentation": "Schedule that discloses the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position." } } }, "auth_ref": [ "r68", "r70", "r78" ] }, "us-gaap_ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEntityWideInformationRevenueFromExternalCustomersByProductsAndServicesTable", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from External Customers by Products and Services [Table]", "label": "Revenue from External Customers by Products and Services [Table]", "documentation": "Tabular presentation of the description and amount of revenues from a product or service, or a group of similar products or similar services, reported from external customers during the period, if the information is not provided as part of the reportable operating segment information." } } }, "auth_ref": [ "r43" ] }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosuresLineItems", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments and Hedging Activities Disclosures [Line Items]", "label": "Derivative Instruments and Hedging Activities Disclosures [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": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfDerivativeInstrumentsInStatementOfFinancialPositionFairValueTextBlock", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Derivative Instruments in Statement of Financial Position, Fair Value", "label": "Schedule of Derivative Instruments in Statement of Financial Position, Fair Value [Table Text Block]", "documentation": "Tabular disclosure of the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position." } } }, "auth_ref": [ "r70" ] }, "us-gaap_RealizedInvestmentGainsLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RealizedInvestmentGainsLosses", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net realized gains (losses)", "label": "Realized Investment Gains (Losses)", "documentation": "Amount of realized gain (loss) on investment." } } }, "auth_ref": [ "r567" ] }, "us-gaap_GainLossOnDispositionOfAssets1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnDispositionOfAssets1", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 19.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "(Gain) loss on disposal of property, plant, and equipment", "label": "Gain (Loss) on Disposition of Assets", "documentation": "Amount of gain (loss) on sale or disposal of assets, including but not limited to property plant and equipment, intangible assets and equity in securities of subsidiaries or equity method investee." } } }, "auth_ref": [ "r851" ] }, "us-gaap_CashAndCashEquivalentsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestments" ], "lang": { "en-us": { "role": { "terseLabel": "Cash, Cash Equivalents, and Investments", "label": "Cash and Cash Equivalents Disclosure [Text Block]", "documentation": "The entire disclosure for cash and cash equivalent footnotes, which may include the types of deposits and money market instruments, applicable carrying amounts, restricted amounts and compensating balance arrangements. Cash and equivalents include: (1) currency on hand (2) demand deposits with banks or financial institutions (3) other kinds of accounts that have the general characteristics of demand deposits (4) 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. Generally, only investments maturing within three months from the date of acquisition qualify." } } }, "auth_ref": [ "r152", "r557" ] }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareCashPaid", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical", "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Cash dividends per common share (usd per share)", "label": "Common Stock, Dividends, Per Share, Cash Paid", "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r121" ] }, "cgnx_StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "StockRepurchasedDuringPriorPeriodSettledInCurrentPeriod", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Repurchased During Prior Period, Settled in Current Period", "label": "Stock Repurchased During Prior Period, Settled in Current Period", "documentation": "Stock Repurchased During Prior Period, Settled in Current Period" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Current liabilities:", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Material Terms of Trading Arrangement", "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r824" ] }, "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableAggregateIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable", "label": "Share-Based Compensation Arrangement By Share-Based Payment Award, Options, Exercisable, Aggregate Intrinsic Value", "documentation": "Share based compensation arrangement by share based payment award options exercisable aggregate intrinsic value." } } }, "auth_ref": [] }, "us-gaap_EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationShareBasedCompensationExcessTaxBenefitAmount", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in tax expense related to stock-based compensation", "label": "Effective Income Tax Rate Reconciliation, Tax Expense (Benefit), Share-Based Payment Arrangement, Amount", "documentation": "Amount of difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying domestic federal statutory income tax rate to pretax income (loss) from continuing operation, attributable to expense for award under share-based payment arrangement. Excludes expense determined to be nondeductible upon grant or after for award under share-based payment arrangement." } } }, "auth_ref": [ "r831", "r917" ] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "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": [ "r30", "r151", "r185", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r444", "r445", "r446", "r473", "r741", "r887", "r927", "r928" ] }, "cgnx_LesseeOperatingLeaseOptionToRenewTermOfContract": { "xbrltype": "durationItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LesseeOperatingLeaseOptionToRenewTermOfContract", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Option to renew, term of contract", "label": "Lessee, Operating Lease, Option to Renew, Term of Contract", "documentation": "Lessee, Operating Lease, Option to Renew, Term of Contract" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://www.cognex.com/role/WarrantyObligationsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Changes in Warranty Obligations", "label": "Schedule of Product Warranty Liability [Table Text Block]", "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability." } } }, "auth_ref": [ "r332" ] }, "cgnx_InsuranceRecoveriesBusinessInterruption": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "InsuranceRecoveriesBusinessInterruption", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Insurance recoveries, business interruption", "label": "Insurance Recoveries, Business Interruption", "documentation": "Insurance Recoveries, Business Interruption" } } }, "auth_ref": [] }, "us-gaap_NondesignatedMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NondesignatedMember", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails", "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails", "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails", "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Not Designated as Hedging Instrument", "label": "Not Designated as Hedging Instrument [Member]", "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP)." } } }, "auth_ref": [ "r19" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangements, by Individual", "label": "Trading Arrangements, by Individual [Table]" } } }, "auth_ref": [ "r825" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO", "label": "Non-PEO NEO [Member]" } } }, "auth_ref": [ "r805" ] }, "cgnx_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedFairValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total fair values of stock options vest", "label": "Share Based Compensation Arrangement By Share Based Payment Award Options Vested Fair Value", "documentation": "Share based compensation arrangement by share based payment award options vested fair value." } } }, "auth_ref": [] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Repurchase of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r39" ] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Comprehensive Income [Abstract]", "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "cgnx_MoritexCorporationMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "MoritexCorporationMember", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Moritex Corporation", "label": "Moritex Corporation [Member]", "documentation": "Moritex Corporation" } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesNameDomain", "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "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": [ "r42" ] }, "us-gaap_ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfUnrealizedLossOnInvestmentsTableTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Gross Unrealized Losses and Fair Values for Available-for-Sale Investments", "label": "Schedule of Unrealized Loss on Investments [Table Text Block]", "documentation": "For all investments in an unrealized loss position, including those for which other-than-temporary impairments have not been recognized in earnings (including investments for which a portion of an other-than-temporary impairment has been recognized in other comprehensive income), a tabular disclosure of the aggregate related fair value of investments with unrealized losses and the aggregate amount of unrealized losses (that is, the amount by which amortized cost basis exceeds fair value)." } } }, "auth_ref": [ "r136" ] }, "us-gaap_ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfNonvestedRestrictedStockUnitsActivityTableTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Nonvested Restricted Stock Units Activity", "label": "Schedule of Nonvested Restricted Stock Units Activity [Table Text Block]", "documentation": "Tabular disclosure of the changes in outstanding nonvested restricted stock units." } } }, "auth_ref": [ "r57" ] }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Assets and Liabilities Measured at Fair Value on a Recurring Basis", "label": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, 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": [ "r466", "r467" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Trading Arrangement, Individual Name" } } }, "auth_ref": [ "r825" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax expense", "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": [ "r140", "r144", "r202", "r203", "r222", "r424", "r436", "r568" ] }, "us-gaap_ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfNonvestedPerformanceBasedUnitsActivityTableTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Nonvested Performance-based Units Activity", "label": "Schedule of Nonvested Performance-Based Units Activity [Table Text Block]", "documentation": "Tabular disclosure of the changes in outstanding nonvested performance-based units." } } }, "auth_ref": [ "r57" ] }, "cgnx_InsuranceRecoveriesLostInventoryAndOtherLosses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "InsuranceRecoveriesLostInventoryAndOtherLosses", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Insurance recoveries, inventory and other losses", "label": "Insurance Recoveries, Lost Inventory And Other Losses", "documentation": "Insurance Recoveries, Lost Inventory And Other Losses" } } }, "auth_ref": [] }, "cgnx_EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement": { "xbrltype": "percentItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EstimatedForfeitureRateForUnvestedOptionsForAllNonSeniorManagement", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated annual forfeiture rate for unvested options for all other employees", "label": "Estimated Forfeiture Rate For Unvested Options For All Non Senior Management", "documentation": "Estimated forfeiture rate for unvested options for all non-senior management." } } }, "auth_ref": [] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Individuals", "label": "All Individuals [Member]" } } }, "auth_ref": [ "r770", "r778", "r788", "r805", "r813", "r817", "r825" ] }, "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneYearBeforeTwoYearsFairValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "1-2 Years", "label": "Available For Sale Securities Debt Maturities After One Year Before Two Years Fair Value", "documentation": "This item represents the fair value of debt securities which are expected to mature within one year of the balance sheet date and which are categorized neither as held-to-maturity nor trading securities." } } }, "auth_ref": [] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockMember", "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock", "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r42" ] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date", "label": "Trading Arrangement Termination Date" } } }, "auth_ref": [ "r826" ] }, "cgnx_ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ProceedsPaymentsIssuanceOfSharesShareBasedPaymentArrangementIncludingOptionExercisedNet", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Net payments from issuance of common stock under stock plans", "label": "Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net", "documentation": "Proceeds (Payments) Issuance of Shares, Share-Based Payment Arrangement, Including Option Exercised, Net" } } }, "auth_ref": [] }, "us-gaap_UnbilledReceivablesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnbilledReceivablesCurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled revenue", "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": [] }, "cgnx_ApplicationSpecificCustomerSolutionsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ApplicationSpecificCustomerSolutionsMember", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Application-specific customer solutions", "label": "Application-Specific Customer Solutions [Member]", "documentation": "Application-Specific Customer Solutions [Member]" } } }, "auth_ref": [] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Title", "label": "Trading Arrangement, Individual Title" } } }, "auth_ref": [ "r825" ] }, "us-gaap_ScheduleOfWeightedAverageNumberOfSharesTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfWeightedAverageNumberOfSharesTableTextBlock", "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Calculation of Weighted-Average Shares", "label": "Schedule of Weighted Average Number of Shares [Table Text Block]", "documentation": "Tabular disclosure of the weighted average number of shares used in calculating basic net earnings per share (or unit) and diluted earnings per share (or unit)." } } }, "auth_ref": [ "r41" ] }, "cgnx_EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition": { "xbrltype": "durationItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EmployeeServiceSharebasedCompensationNonvestedAwardsCompensationNotyetRecognizedPeriodforRecognition", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average period to be recognized", "label": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition", "documentation": "Employee Service Share-based Compensation, Nonvested Awards, Compensation Not yet Recognized, Period for Recognition" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.cognex.com/role/InventoriesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Inventories", "label": "Schedule of Inventory, Current [Table Text Block]", "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process." } } }, "auth_ref": [ "r26", "r93", "r94", "r95" ] }, "cgnx_StandardProductsandServicesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "StandardProductsandServicesMember", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Standard products and services", "label": "Standard Products and Services [Member]", "documentation": "Standard Products and Services [Member]" } } }, "auth_ref": [] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Arrangement Duration", "label": "Trading Arrangement Duration" } } }, "auth_ref": [ "r827" ] }, "cgnx_ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "ComponentsOfCashCashEquivalentsAndInvestmentsTableTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Components of Cash, Cash Equivalents, and Investments", "label": "Components Of Cash Cash Equivalents And Investments [Table Text Block]", "documentation": "Components of cash cash equivalents and investments." } } }, "auth_ref": [] }, "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterFourYearsBeforeFiveYearsFairValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "4-5 Years", "label": "Available For Sale Securities Debt Maturities After Four Years Before Five Years Fair Value", "documentation": "Available-for-sale securities, debt maturities after fourth year but before fifth year, fair value." } } }, "auth_ref": [] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Adoption Date", "label": "Trading Arrangement Adoption Date" } } }, "auth_ref": [ "r826" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAllowanceForCreditLossCurrent", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Allowance for credit losses", "label": "Debt Securities, Available-for-Sale, Allowance for Credit Loss, Current", "documentation": "Amount 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), classified as current." } } }, "auth_ref": [ "r286" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Forfeited or expired (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeitures, Weighted Average Grant Date Fair Value", "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event." } } }, "auth_ref": [ "r404" ] }, "us-gaap_ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationStockOptionsActivityTableTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Stock Option Activity", "label": "Share-Based Payment Arrangement, Option, Activity [Table Text Block]", "documentation": "Tabular disclosure for stock option plans. Includes, but is not limited to, outstanding awards at beginning and end of year, grants, exercises, forfeitures, and weighted-average grant date fair value." } } }, "auth_ref": [ "r21", "r22", "r56" ] }, "cgnx_LiabilityForUncertainTaxPositions": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LiabilityForUncertainTaxPositions", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Liability for uncertain tax positions", "label": "Liability For Uncertain Tax Positions", "documentation": "Liability for uncertain tax positions, total." } } }, "auth_ref": [] }, "us-gaap_ForeignCurrencyTransactionGainLossBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyTransactionGainLossBeforeTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency gain (loss)", "label": "Gain (Loss), Foreign Currency Transaction, before Tax", "documentation": "Amount, before tax, of realized and unrealized gain (loss) from foreign currency transaction." } } }, "auth_ref": [ "r477", "r478", "r479", "r480", "r649" ] }, "us-gaap_ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedPaymentAwardStockOptionsValuationAssumptionsTableTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseTables" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-Average Assumptions Used in Estimating Fair Values of Stock Options Granted", "label": "Schedule of Share-Based Payment Award, Stock Options, Valuation Assumptions [Table Text Block]", "documentation": "Tabular disclosure of the significant assumptions used during the year to estimate the fair value of stock options, including, but not limited to: (a) expected term of share options and similar instruments, (b) expected volatility of the entity's shares, (c) expected dividends, (d) risk-free rate(s), and (e) discount for post-vesting restrictions." } } }, "auth_ref": [ "r124" ] }, "cgnx_TreasuryStockAdditionalSharesAcquired": { "xbrltype": "sharesItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "TreasuryStockAdditionalSharesAcquired", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additional shares repurchased (in shares)", "label": "Treasury Stock, Additional Shares, Acquired", "documentation": "Treasury Stock, Additional Shares, Acquired" } } }, "auth_ref": [] }, "cgnx_A88000SquareFootPremisesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "A88000SquareFootPremisesMember", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "88,000 square-foot premises", "label": "88,000 Square-Foot Premises [Member]", "documentation": "88,000 Square-Foot Premises" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentByTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentByTypeAxis", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Lived Tangible Asset [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": [ "r13" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-Average Grant Date Fair Value", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetBackedSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetBackedSecuritiesMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Asset-backed securities", "label": "Asset-Backed Securities [Member]", "documentation": "Securities that are primarily serviced by the cash flows of a discrete pool of receivables or other financial assets for example, but not limited to, credit card receivables, car loans, recreational vehicle loans, and mobile home loans." } } }, "auth_ref": [ "r732", "r859", "r860", "r861" ] }, "cgnx_SouthboroughMassachusettsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "SouthboroughMassachusettsMember", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Southborough, Massachusetts", "label": "Southborough, Massachusetts [Member]", "documentation": "Southborough, Massachusetts" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseWeightedAverageDiscountRatePercent": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageDiscountRatePercent", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "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": [ "r500", "r740" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Available", "label": "Trading Arrangement, Securities Aggregate Available Amount" } } }, "auth_ref": [ "r828" ] }, "cgnx_AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterFiveYears", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "5-8 Years", "label": "Available For Sale Securities Debt Maturities After Five Years", "documentation": "Available For Sale Securities Debt Maturities After Five Years" } } }, "auth_ref": [] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 }, "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": "cgnx_CashCashEquivalentsShortTermAndLongTermInvestments", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "totalLabel": "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": [ "r40", "r152", "r705" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.cognex.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "New 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_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]" } } }, "auth_ref": [ "r759", "r829" ] }, "us-gaap_ForeignCurrencyContractsLiabilityFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignCurrencyContractsLiabilityFairValueDisclosure", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Economic hedge forward contracts", "label": "Foreign Currency Contracts, Liability, Fair Value Disclosure", "documentation": "Fair value portion of liability contracts related to the exchange of different currencies, including, but not limited to, foreign currency options, forward (delivery or nondelivery) contracts, and swaps entered into." } } }, "auth_ref": [] }, "srt_CurrencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "CurrencyAxis", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Currency [Axis]", "label": "Currency [Axis]" } } }, "auth_ref": [ "r924" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r187", "r188", "r189", "r218", "r539", "r584", "r590", "r604", "r605", "r606", "r607", "r608", "r609", "r612", "r615", "r616", "r617", "r618", "r619", "r621", "r622", "r623", "r624", "r626", "r627", "r628", "r629", "r630", "r632", "r634", "r635", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r645", "r646", "r647", "r648", "r652", "r747" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFour", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2027", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Four", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueAfterYearFive", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Thereafter", "label": "Lessee, Operating Lease, Liability, to be Paid, after Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease due after fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Adopted", "label": "Insider Trading Policies and Procedures Adopted [Flag]" } } }, "auth_ref": [ "r759", "r829" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "totalLabel": "Other comprehensive income (loss), net of tax", "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": [ "r9", "r16", "r128", "r171", "r174" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Not Adopted", "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]" } } }, "auth_ref": [ "r759", "r829" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDue", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails", "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Future lease payments", "totalLabel": "Total", "label": "Lessee, Operating Lease, Liability, to be Paid", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease." } } }, "auth_ref": [ "r501" ] }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "totalLabel": "Net change related to foreign currency translation adjustments", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity." } } }, "auth_ref": [ "r9", "r16", "r128" ] }, "cgnx_LossGainFromCatastrophes": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "LossGainFromCatastrophes", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Loss (recovery) from fire (Note 17)", "label": "Loss (Gain) From Catastrophes", "documentation": "Loss (Gain) From Catastrophes" } } }, "auth_ref": [] }, "us-gaap_RestructuringReserveRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringReserveRollForward", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Reserve [Roll Forward]", "label": "Restructuring Reserve [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": [] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO", "label": "PEO [Member]" } } }, "auth_ref": [ "r805" ] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (usd 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": [ "r179", "r196", "r197", "r198", "r199", "r200", "r207", "r209", "r211", "r212", "r213", "r217", "r460", "r461", "r548", "r566", "r712" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecuritiesCurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 }, "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": "cgnx_CashCashEquivalentsShortTermAndLongTermInvestments", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Current investments, amortized cost of $120,831 and $223,545 in 2023 and 2022, respectively, allowance for credit losses of $0 in 2023 and 2022", "verboseLabel": "Current investments", "label": "Debt Securities, Available-for-Sale, Current", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as current." } } }, "auth_ref": [ "r238", "r286" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueNextTwelveMonths", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2024", "label": "Lessee, Operating Lease, Liability, to be Paid, Year One", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "us-gaap_StockRepurchaseProgramAuthorizedAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramAuthorizedAmount1", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock repurchase program, authorized amount", "label": "Stock Repurchase Program, Authorized Amount", "documentation": "Amount of stock repurchase plan authorized." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearFive": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearFive", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2028", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Five", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "us-gaap_StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchaseProgramRemainingAuthorizedRepurchaseAmount1", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining authorized repurchase amount", "label": "Stock Repurchase Program, Remaining Authorized Repurchase Amount", "documentation": "Amount remaining of a stock repurchase plan authorized." } } }, "auth_ref": [] }, "cgnx_NumberOfGroupsWithinEmployeePopulation": { "xbrltype": "integerItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "NumberOfGroupsWithinEmployeePopulation", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Groups within the employee population", "label": "Number Of Groups Within Employee Population", "documentation": "Number of groups within employee population." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostCurrent", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized cost of current investments", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Current", "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), classified as current." } } }, "auth_ref": [ "r286", "r858" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 }, "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 17.0 }, "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity", "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows", "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome", "http://www.cognex.com/role/ConsolidatedStatementsofOperations", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net income", "terseLabel": "Net income", "label": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r100", "r112", "r135", "r149", "r170", "r173", "r177", "r185", "r192", "r196", "r197", "r198", "r199", "r202", "r203", "r210", "r219", "r224", "r228", "r230", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r461", "r473", "r563", "r633", "r650", "r651", "r714", "r752", "r887" ] }, "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "totalLabel": "Net change related to available-for-sale investments", "label": "Other Comprehensive Income (Loss), Available-for-Sale Securities Adjustment, Net of Tax, Portion Attributable to Parent", "documentation": "Amount, after tax and reclassification adjustment, of gain (loss) in value of unsold investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), attributable to parent." } } }, "auth_ref": [ "r9", "r16", "r128" ] }, "cgnx_IncomeTaxExaminationYearsUnderExaminationOtherEntities": { "xbrltype": "stringItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "IncomeTaxExaminationYearsUnderExaminationOtherEntities", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax years open to examination by various taxing authorities for other entities", "label": "Income Tax Examination Years Under Examination Other Entities", "documentation": "The tax year(s) being audited in connection with the income tax examination for other entities." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAmortizedCostNoncurrent", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized cost of non-current investments", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Noncurrent", "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), classified as noncurrent." } } }, "auth_ref": [ "r286", "r858" ] }, "cgnx_SellingGeneralAndAdministrativeMember": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "SellingGeneralAndAdministrativeMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Selling, general, and administrative", "label": "Selling General And Administrative [Member]", "documentation": "Selling, general, and administrative." } } }, "auth_ref": [] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]" } } }, "auth_ref": [ "r760", "r771", "r781", "r806" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearThree", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2026", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Three", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAllowanceForCreditLossNoncurrent", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Allowance for credit losses, non-current", "label": "Debt Securities, Available-for-Sale, Allowance for Credit Loss, Noncurrent", "documentation": "Amount 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), classified as noncurrent." } } }, "auth_ref": [ "r286" ] }, "cgnx_DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "DecreaseInCompensationExpenseDueToRevisedEstimatedForfeitureRates", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Decrease in compensation expense due to revised estimated forfeiture rates", "label": "Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates", "documentation": "Decrease In Compensation Expense Due To Revised Estimated Forfeiture Rates" } } }, "auth_ref": [] }, "us-gaap_CommonStockValueOutstanding": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockValueOutstanding", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, $.002 par value \u2013 Authorized: 300,000 shares in 2023 and 2022, respectively; issued and outstanding: 172,142 and 172,631 shares in 2023 and 2022, respectively", "label": "Common Stock, Value, Outstanding", "documentation": "Value of all classes of common stock held by shareholders. May be all or portion of the number of common shares authorized. These shares exclude common shares repurchased by the entity and held as treasury shares." } } }, "auth_ref": [ "r87", "r612" ] }, "cgnx_EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "EmployeeServiceShareBasedCompensationRecognizedPeriodCostsCapitalizedAmount", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized period costs capitalized", "label": "Employee Service, Share-Based Compensation Recognized, Period Costs, Capitalized Amount", "documentation": "Employee service share based compensation recognized period costs capitalized amount." } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityMaturityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityMaturityTableTextBlock", "presentation": [ "http://www.cognex.com/role/LeasesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Lessee, Operating Lease, Liability, 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": [ "r926" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Shareholders\u2019 equity:", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Tax Disclosure [Abstract]", "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsRemainderOfFiscalYear", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails", "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remainder of fiscal 2023", "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": [ "r926" ] }, "us-gaap_PreferredStockValueOutstanding": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockValueOutstanding", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock, $.01 par value \u2013 Authorized: 400 shares in 2023 and 2022, respectively; no shares issued and outstanding", "label": "Preferred Stock, Value, Outstanding", "documentation": "Value of all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by shareholders, which is net of related treasury stock. May be all or a portion of the number of preferred shares authorized. These shares represent the ownership interest of the preferred shareholders." } } }, "auth_ref": [ "r86", "r612" ] }, "cgnx_CashCashEquivalentsShortTermAndLongTermInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "CashCashEquivalentsShortTermAndLongTermInvestments", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total", "label": "Cash Cash Equivalents Short Term And Long Term Investments", "documentation": "Cash, cash equivalents, short term and long term investments." } } }, "auth_ref": [] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]", "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneous Compensation Analysis", "label": "Erroneous Compensation Analysis [Text Block]" } } }, "auth_ref": [ "r763", "r774", "r784", "r809" ] }, "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDueYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseLiabilityPaymentsDueYearTwo", "crdr": "credit", "calculation": { "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails": { "parentTag": "us-gaap_LesseeOperatingLeaseLiabilityPaymentsDue", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/LeasesFutureMinimumLeasePaymentObligationsUnderOperatingLeasesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Lessee, Operating Lease, Liability, to be Paid, Year Two", "documentation": "Amount of lessee's undiscounted obligation for lease payment for operating lease to be paid in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r501" ] }, "cgnx_DeferredRevenueForeignCurrencyExchangeAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "DeferredRevenueForeignCurrencyExchangeAdjustment", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign exchange rate changes", "label": "Deferred Revenue, Foreign Currency Exchange Adjustment", "documentation": "Deferred Revenue, Foreign Currency Exchange Adjustment" } } }, "auth_ref": [] }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Derivative Instruments and Hedging Activities Disclosure [Abstract]", "label": "Derivative Instruments and Hedging Activities Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsLineItems", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Employee Service Share-based Compensation, Allocation of Recognized Period Costs [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_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CityAreaCode", "presentation": [ "http://www.cognex.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgram" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Repurchase Program", "label": "Equity [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r120", "r184", "r348", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r361", "r362", "r457", "r655", "r656", "r687" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "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": [ "r744", "r745", "r746", "r748", "r749", "r750", "r751", "r853", "r854", "r922", "r939", "r941" ] }, "currency_GBP": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "GBP", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "British Pound", "label": "United Kingdom, Pounds" } } }, "auth_ref": [] }, "us-gaap_MunicipalBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MunicipalBondsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Municipal bonds", "label": "Municipal Bonds [Member]", "documentation": "Long-term debt securities issued by state, city or local governments or the agencies operated by state, city or local governments." } } }, "auth_ref": [] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "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": [ "r416", "r417", "r418", "r588", "r853", "r854", "r855", "r922", "r941" ] }, "us-gaap_AllocatedShareBasedCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllocatedShareBasedCompensationExpense", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expense", "label": "Share-Based Payment Arrangement, Expense", "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized." } } }, "auth_ref": [ "r414", "r419" ] }, "us-gaap_AccruedLiabilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesMember", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued expenses", "label": "Accrued Liabilities [Member]", "documentation": "This item represents 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." } } }, "auth_ref": [ "r29" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "LocalPhoneNumber", "presentation": [ "http://www.cognex.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_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Preferred stock shares issued (in shares)", "label": "Preferred Stock, Shares Issued", "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt." } } }, "auth_ref": [ "r86", "r349" ] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Line Items]", "label": "Subsequent Event [Line Items]", "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event." } } }, "auth_ref": [ "r488", "r505" ] }, "us-gaap_EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationTaxBenefitFromCompensationExpense", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Tax benefit from compensation expense", "label": "Share-Based Payment Arrangement, Expense, Tax Benefit", "documentation": "Amount of tax benefit for recognition of expense of award under share-based payment arrangement." } } }, "auth_ref": [ "r414" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Write-offs, net of recoveries", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r281" ] }, "us-gaap_DebtSecuritiesAvailableForSaleRealizedGain": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleRealizedGain", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross realized gains", "label": "Debt Securities, Available-for-Sale, Realized Gain", "documentation": "Amount of realized gain on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r269" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "less than 1 year", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity 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": [ "r247", "r550" ] }, "us-gaap_PurchaseCommitmentRemainingMinimumAmountCommitted": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PurchaseCommitmentRemainingMinimumAmountCommitted", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/CommitmentandContingenciesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding purchase orders", "label": "Purchase Commitment, Remaining Minimum Amount Committed", "documentation": "Minimum amount to be expended to satisfy the terms of arrangements in which the entity has agreed to expend funds to procure goods or services, excluding long-term purchase commitments or unconditional purchase obligations." } } }, "auth_ref": [ "r85", "r132" ] }, "us-gaap_RestrictedStockUnitsRSUMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockUnitsRSUMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock Units (RSUs)", "label": "Restricted Stock Units (RSUs) [Member]", "documentation": "Share instrument which is convertible to stock or an equivalent amount of cash, after a specified period of time or when specified performance conditions are met." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsOutstandingWeightedAverageRemainingContractualTerm2", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding (in years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for option awards outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r123" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTable", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Table]", "label": "Subsequent Event [Table]", "documentation": "Discloses pertinent information about one or more significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued." } } }, "auth_ref": [ "r488", "r505" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsExercisableWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable (in years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for vested portions of options outstanding and currently exercisable or convertible, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r55" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Axis]", "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r488", "r505" ] }, "us-gaap_IntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/IntangibleAssets" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible Assets", "label": "Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for all or part of the information related to intangible assets." } } }, "auth_ref": [ "r301" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r86", "r612" ] }, "currency_HUF": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "HUF", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hungarian Forint", "label": "Hungary, Forint" } } }, "auth_ref": [] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "auth_ref": [ "r793" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r86", "r612", "r631", "r941", "r942" ] }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Allowance for Credit Loss Activity", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]", "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r867" ] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageRemainingContractualTerm1", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options vested or expected to vest (in years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Remaining Contractual Term", "documentation": "Weighted average remaining contractual term for fully vested and expected to vest options outstanding, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r407" ] }, "us-gaap_SovereignDebtSecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SovereignDebtSecuritiesMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sovereign bonds", "label": "Sovereign Debt Securities [Member]", "documentation": "Debt security issued by foreign government (not within the country of domicile of the entity)." } } }, "auth_ref": [] }, "us-gaap_SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharebasedCompensationArrangementBySharebasedPaymentAwardFairValueAssumptionsExpectedTerm1", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected term (in years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Term", "documentation": "Expected term of award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r409" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Recurring and Nonrecurring [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": [ "r466", "r467", "r470" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12MonthsAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Unrealized losses, less than 12 months", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for less than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r139", "r290" ] }, "us-gaap_OtherNonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherNonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Other income (expense)", "label": "Other Nonoperating Income (Expense)", "documentation": "Amount of income (expense) related to nonoperating activities, classified as other." } } }, "auth_ref": [ "r106" ] }, "us-gaap_AssetsFairValueDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsFairValueDisclosureAbstract", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Assets:", "label": "Assets, Fair Value Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expense", "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": [ "r59", "r60", "r386" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Domain]", "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r488", "r505" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "Security12bTitle", "presentation": [ "http://www.cognex.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": [ "r755" ] }, "currency_JPY": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "JPY", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Japanese Yen", "label": "Japan, Yen" } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Net issuance of common stock under stock plans", "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": [ "r18", "r33", "r121" ] }, "us-gaap_PropertyPlantAndEquipmentTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentTypeDomain", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-Lived Tangible Asset [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": [ "r118" ] }, "us-gaap_LeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeaseCost", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lease, cost", "label": "Lease, Cost", "documentation": "Amount of lease cost recognized by lessee for lease contract." } } }, "auth_ref": [ "r496", "r740" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecuritiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecuritiesNoncurrent", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term investments", "label": "Debt Securities, Available-for-Sale, Noncurrent", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), classified as noncurrent." } } }, "auth_ref": [ "r153", "r238", "r286" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r86", "r349" ] }, "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Total fair value", "label": "Debt Securities, Available-for-Sale, Unrealized Loss Position", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in unrealized loss position without allowance for credit loss." } } }, "auth_ref": [ "r137", "r288", "r716" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 1.0 }, "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial assets at fair value", "verboseLabel": "Fair\u00a0Value", "totalLabel": "Total", "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": [ "r241", "r286", "r546", "r857" ] }, "us-gaap_USTreasurySecuritiesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "USTreasurySecuritiesMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Treasury bills", "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": [ "r711", "r732", "r734", "r936" ] }, "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "negatedTotalLabel": "Total unrealized Losses", "label": "Debt Securities, Available-for-Sale, Unrealized Loss Position, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in unrealized loss position, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r138", "r289" ] }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateContinuingOperations", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Effective tax rate", "label": "Effective Income Tax Rate Reconciliation, Percent", "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r425" ] }, "us-gaap_LeasesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LeasesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Leases [Abstract]", "label": "Leases [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OperatingLeaseCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseCost", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "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": [ "r497", "r740" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLongerAccumulatedLoss", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPositionAccumulatedLoss", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Unrealized losses, 12 months or greater", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer, Accumulated Loss", "documentation": "Amount of accumulated unrealized loss on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for 12 months or longer, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r139", "r290" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "TradingSymbol", "presentation": [ "http://www.cognex.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_ExtraordinaryAndUnusualItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ExtraordinaryAndUnusualItemsAbstract", "lang": { "en-us": { "role": { "label": "Unusual or Infrequent Items, or Both [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LesseeOperatingLeasesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeasesTextBlock", "presentation": [ "http://www.cognex.com/role/Leases" ], "lang": { "en-us": { "role": { "terseLabel": "Leases", "label": "Lessee, Operating Leases [Text Block]", "documentation": "The entire disclosure for operating leases of lessee. Includes, but is not limited to, description of operating lease and maturity analysis of operating lease liability." } } }, "auth_ref": [ "r491" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "SecurityExchangeName", "presentation": [ "http://www.cognex.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": [ "r757" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Intangible Assets, Future Amortization Expense", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r46" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue and customer deposits", "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": [ "r363", "r364", "r375" ] }, "us-gaap_LossFromCatastrophes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LossFromCatastrophes", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Loss from fire", "label": "Loss from Catastrophes", "documentation": "The charge against earnings in the period for the uninsured portion of a loss from a fire, explosion, or natural disaster (hurricane, earthquake)." } } }, "auth_ref": [ "r106" ] }, "us-gaap_ProductWarrantyAccrualWarrantiesIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualWarrantiesIssued", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/WarrantyObligationsDetail" ], "lang": { "en-us": { "role": { "verboseLabel": "Provisions for warranties issued during the period", "label": "Standard and Extended Product Warranty Accrual, Increase for Warranties Issued", "documentation": "Amount of increase in the standard and extended product warranty accrual from warranties issued." } } }, "auth_ref": [ "r335" ] }, "us-gaap_ProductWarrantyDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/WarrantyObligations" ], "lang": { "en-us": { "role": { "terseLabel": "Warranty Obligations", "label": "Product Warranty Disclosure [Text Block]", "documentation": "The entire disclosure for standard and extended product warranties and other product guarantee contracts, including a tabular reconciliation of the changes in the guarantor's aggregate product warranty liability for the reporting period." } } }, "auth_ref": [ "r325", "r326", "r327", "r328", "r330", "r331" ] }, "us-gaap_ProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/WarrantyObligationsDetail" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Standard and Extended Product Warranty Accrual", "documentation": "Carrying value as of the balance sheet date of obligations incurred through that date and payable for estimated claims under standard and extended warranty protection rights granted to customers." } } }, "auth_ref": [ "r80", "r329", "r333", "r336" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 14.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Unbilled 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": [ "r538", "r850" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Equity [Abstract]", "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "currency_MXN": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "MXN", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Mexican Peso", "label": "Mexico, Pesos" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleRealizedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleRealizedLoss", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossRealizedGainsandLossesontheSaleofDebtSecuritiesDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross realized losses", "label": "Debt Securities, Available-for-Sale, Realized Loss", "documentation": "Amount of realized 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": [ "r269" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r18", "r33", "r147", "r175", "r176", "r177", "r187", "r188", "r189", "r193", "r201", "r203", "r218", "r272", "r275", "r362", "r416", "r417", "r418", "r430", "r431", "r449", "r450", "r451", "r452", "r453", "r455", "r459", "r482", "r483", "r484", "r485", "r486", "r487", "r502", "r576", "r577", "r578", "r588", "r652" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.cognex.com/role/WeightedAverageShares" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-Average Shares", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r206", "r214", "r215", "r216" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Retained Earnings", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r147", "r187", "r188", "r189", "r193", "r201", "r203", "r272", "r275", "r416", "r417", "r418", "r430", "r431", "r449", "r451", "r452", "r455", "r459", "r576", "r578", "r588", "r941" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Loss", "label": "AOCI Attributable to Parent [Member]", "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners." } } }, "auth_ref": [ "r4", "r17", "r35", "r450", "r453", "r502", "r576", "r577", "r846", "r847", "r848", "r853", "r854", "r855" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardSharesIssuedInPeriod", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Net issuance of common stock under stock plans (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": [ "r55" ] }, "us-gaap_EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectiveIncomeTaxRateReconciliationAtFederalStatutoryIncomeTaxRate", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statutory tax rate", "label": "Effective Income Tax Rate Reconciliation, at Federal Statutory Income Tax Rate, Percent", "documentation": "Percentage of domestic federal statutory tax rate applicable to pretax income (loss)." } } }, "auth_ref": [ "r186", "r425", "r437" ] }, "us-gaap_ProductWarrantyAccrualPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantyAccrualPayments", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/WarrantyObligationsDetail" ], "lang": { "en-us": { "role": { "negatedLabel": "Fulfillment of warranty obligations", "label": "Standard and Extended Product Warranty Accrual, Decrease for Payments", "documentation": "Amount of decrease in the standard and extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the standard and extended product warranty." } } }, "auth_ref": [ "r334" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "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": [ "r374", "r725", "r726", "r727", "r728", "r729", "r730", "r731" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_RevenueFromExternalCustomersByGeographicAreasTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromExternalCustomersByGeographicAreasTableTextBlock", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionTables" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue from External Customers by Geographic Areas", "label": "Revenue from External Customers by Geographic Areas [Table Text Block]", "documentation": "Tabular disclosure of revenue from external customers by geographic areas attributed to the entity's country of domicile and to foreign countries from which the entity derives revenue." } } }, "auth_ref": [ "r24" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Exercised (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": [ "r18", "r86", "r87", "r121", "r396" ] }, "us-gaap_ResearchAndDevelopmentExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpense", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Research, development, and engineering expenses", "label": "Research and Development Expense", "documentation": "The aggregate costs incurred (1) in a planned search or critical investigation aimed at discovery of new knowledge with the hope that such knowledge will be useful in developing a new product or service, a new process or technique, or in bringing about a significant improvement to an existing product or process; or (2) to translate research findings or other knowledge into a plan or design for a new product or process or for a significant improvement to an existing product or process whether intended for sale or the entity's use, during the reporting period charged to research and development projects, including the costs of developing computer software up to the point in time of achieving technological feasibility, and costs allocated in accounting for a business combination to in-process projects deemed to have no alternative future use." } } }, "auth_ref": [ "r82", "r420", "r935" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (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": [ "r110", "r111", "r112" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIForSaleOfSecuritiesNetOfTax", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity", "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "negatedLabel": "Reclassification of net realized (gain) loss on the sale of available-for-sale investments into current operations", "negatedTerseLabel": "Reclassification of net realized (gain) loss on the sale of available-for-sale investments", "label": "Other Comprehensive Income (Loss), Reclassification Adjustment from AOCI for Sale of Securities, Net of Tax", "documentation": "Amount after tax of reclassification adjustment from accumulated other comprehensive income for unrealized gain (loss) realized upon the sale of available-for-sale securities." } } }, "auth_ref": [ "r7", "r98", "r169", "r270" ] }, "us-gaap_ProceedsFromSaleMaturityAndCollectionsOfInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromSaleMaturityAndCollectionsOfInvestments", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Maturities and sales of investments", "label": "Proceeds from Sale, Maturity and Collection of Investments", "documentation": "The cash inflow associated with the sale, maturity and collection of all investments such as debt, security and so forth during the period." } } }, "auth_ref": [ "r37" ] }, "us-gaap_GoodwillDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/Goodwill" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Goodwill Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill." } } }, "auth_ref": [ "r296", "r298", "r300", "r717" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures", "label": "Awards Close in Time to MNPI Disclosures [Table]" } } }, "auth_ref": [ "r817" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_DerivativesFairValueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativesFairValueLineItems", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivatives, Fair Value [Line Items]", "label": "Derivatives, Fair Value [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": [] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangement:", "label": "Trading Arrangement [Axis]" } } }, "auth_ref": [ "r823" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-NEOs", "label": "Non-NEOs [Member]" } } }, "auth_ref": [ "r767", "r778", "r788", "r805", "r813" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAllowanceForCreditLoss", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt securities, available-for-sale, allowance for credit loss", "label": "Debt Securities, Available-for-Sale, Allowance for Credit Loss", "documentation": "Amount 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": [ "r242", "r286", "r293", "r294" ] }, "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/RestructuringCharges" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Charges", "label": "Restructuring and Related Activities Disclosure [Text Block]", "documentation": "The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled." } } }, "auth_ref": [ "r307", "r308", "r310", "r313", "r318" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from operating activities:", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Adjustments to Compensation", "label": "All Adjustments to Compensation [Member]" } } }, "auth_ref": [ "r798" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise Price", "label": "Award Exercise Price" } } }, "auth_ref": [ "r820" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Distribution Rights, Developed Technology Rights, Customer Contracts And Relationships, Other Intangible Assets, And Trademarks", "label": "Finite-Lived Intangible Assets [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [ "r540" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Awards Close in Time to MNPI Disclosures, Individual Name" } } }, "auth_ref": [ "r818" ] }, "us-gaap_Liabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Liabilities", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities", "label": "Liabilities", "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future." } } }, "auth_ref": [ "r28", "r185", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r444", "r445", "r446", "r473", "r610", "r713", "r754", "r887", "r927", "r928" ] }, "us-gaap_TreasuryStockSharesAcquired": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockSharesAcquired", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares repurchased (in shares)", "label": "Treasury Stock, Shares, Acquired", "documentation": "Number of shares that have been repurchased during the period and are being held in treasury." } } }, "auth_ref": [ "r18", "r87", "r121" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets by Major Class [Axis]", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r302", "r303", "r304", "r305", "r540", "r544" ] }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]", "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 }, "http://www.cognex.com/role/InventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets", "http://www.cognex.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories", "totalLabel": "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": [ "r160", "r706", "r741" ] }, "us-gaap_InsuranceRecoveries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InsuranceRecoveries", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Insurance recoveries", "label": "Insurance Recoveries", "documentation": "The amount recovered from insurance. These recoveries reduce costs and losses that are reported as a separate line item under operating expenses." } } }, "auth_ref": [ "r103" ] }, "us-gaap_DerivativeNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeNotionalAmount", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative, Notional Amount", "label": "Derivative, Notional Amount", "documentation": "Nominal or face amount used to calculate payment on derivative." } } }, "auth_ref": [ "r919", "r920" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Securities", "label": "Award Underlying Securities Amount" } } }, "auth_ref": [ "r819" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r45", "r46" ] }, "us-gaap_FireMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FireMember", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fire", "label": "Fire [Member]", "documentation": "Oxidation process that releases energy in the form of light and heat (flames) and often creates smoke." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAllowanceForCreditLossPeriodIncreaseDecrease", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit loss on investments", "label": "Debt Securities, Available-for-Sale, Allowance for Credit Loss, Period Increase (Decrease)", "documentation": "Amount of increase (decrease) in allowance for credit loss of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r868" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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_Cash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Cash", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": "us-gaap_CashAndCashEquivalentsAtCarryingValue", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" ], "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": [ "r141", "r557", "r589", "r620", "r741", "r754", "r841" ] }, "us-gaap_RestructuringReserve": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringReserve", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Restructuring Reserve", "documentation": "Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan." } } }, "auth_ref": [ "r310", "r314" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "totalLabel": "Total comprehensive income", "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": [ "r36", "r172", "r174", "r178", "r547", "r565" ] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Adopted", "label": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r824" ] }, "us-gaap_OneTimeTerminationBenefitsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OneTimeTerminationBenefitsMember", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "One-time Termination Benefits", "label": "One-time Termination Benefits [Member]", "documentation": "A lump sum payment to an involuntarily terminated employee in conjunction with exit or disposal activities." } } }, "auth_ref": [ "r718", "r719", "r720", "r721" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Accumulated Amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r155", "r304" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value as of Grant Date", "label": "Award Grant Date Fair Value" } } }, "auth_ref": [ "r821" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and shareholders' 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": [ "r92", "r133", "r560", "r741", "r852", "r866", "r923" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "LIABILITIES AND SHAREHOLDERS\u2019 EQUITY", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure", "label": "Pay vs Performance Disclosure [Table]" } } }, "auth_ref": [ "r793" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Amount", "label": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r763", "r774", "r784", "r809" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Security Market Price Change", "label": "Underlying Security Market Price Change, Percent" } } }, "auth_ref": [ "r822" ] }, "us-gaap_RestructuringPlanAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringPlanAxis", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Plan [Axis]", "label": "Restructuring Plan [Axis]", "documentation": "Information by individual restructuring plan." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive loss, net of tax", "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": [ "r34", "r35", "r98", "r158", "r558", "r580", "r583" ] }, "us-gaap_CashAndCashEquivalentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cash and Cash Equivalents [Abstract]", "label": "Cash and Cash Equivalents [Abstract]" } } }, "auth_ref": [] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure, Table", "label": "Pay vs Performance [Table Text Block]" } } }, "auth_ref": [ "r793" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityShellCompany", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "us-gaap_RestructuringPlanDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringPlanDomain", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Plan [Domain]", "label": "Restructuring Plan [Domain]", "documentation": "Identification of the individual restructuring plans." } } }, "auth_ref": [] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation:", "label": "Adjustment to Compensation [Axis]" } } }, "auth_ref": [ "r798" ] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r823" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Forgone Recovery, Individual Name" } } }, "auth_ref": [ "r767", "r778", "r788", "r813" ] }, "us-gaap_RestructuringReserveTranslationAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringReserveTranslationAdjustment", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Foreign exchange rate changes", "label": "Restructuring Reserve, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which decreases (increases) the restructuring reserve." } } }, "auth_ref": [ "r882", "r883" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Selling, general, and administrative expenses", "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": [ "r104" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount", "label": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r795" ] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "calculation": { "http://www.cognex.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Finished goods", "label": "Inventory, Finished Goods, Net of Reserves", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale." } } }, "auth_ref": [ "r115", "r707" ] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Amount", "label": "Company Selected Measure Amount" } } }, "auth_ref": [ "r797" ] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.cognex.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Work-in-process", "label": "Inventory, Work in Process, Net of Reserves", "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing." } } }, "auth_ref": [ "r115", "r708" ] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFilerCategory", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Total Compensation Amount", "label": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r794" ] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "calculation": { "http://www.cognex.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Raw materials", "label": "Inventory, Raw Materials, Net of Reserves", "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process." } } }, "auth_ref": [ "r115", "r709" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r45", "r46", "r540" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "All Trading Arrangements", "label": "All Trading Arrangements [Member]" } } }, "auth_ref": [ "r823" ] }, "us-gaap_DerivativeAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeAssets", "crdr": "debit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails", "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative asset", "totalLabel": "Net amount of assets presented", "label": "Derivative Asset", "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset." } } }, "auth_ref": [ "r163", "r165", "r472", "r591", "r592", "r593", "r595", "r596", "r598", "r599", "r600", "r602", "r603", "r618", "r619", "r666", "r670", "r673", "r674", "r676", "r677", "r710", "r746", "r940" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntitySmallBusiness", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Significant Other Observable 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": [ "r346", "r378", "r383", "r467", "r511", "r722", "r723", "r732", "r733", "r734" ] }, "us-gaap_LesseeOperatingLeaseTermOfContract": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LesseeOperatingLeaseTermOfContract", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Term of contract", "label": "Lessee, Operating Lease, Term of Contract", "documentation": "Term of lessee's operating lease, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [ "r925" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Total Compensation Amount", "label": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r794" ] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Intangible Assets", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r45", "r46" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Quoted\u00a0Prices\u00a0in Active Markets for Identical Assets (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": [ "r346", "r378", "r383", "r467", "r510", "r732", "r733", "r734" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r130", "r157", "r185", "r219", "r225", "r229", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r443", "r445", "r473", "r553", "r625", "r741", "r754", "r887", "r888", "r927" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Actually Paid Compensation Amount", "label": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r795" ] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.cognex.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r756" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 }, "http://www.cognex.com/role/IntangibleAssetsDetails": { "parentTag": null, "weight": null, "order": null, "root": true }, "http://www.cognex.com/role/IntangibleAssetsDetails_1": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets", "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net", "totalLabel": "Net Carrying Value", "label": "Finite-Lived Intangible Assets, Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r116", "r540" ] }, "us-gaap_OperatingLeaseWeightedAverageRemainingLeaseTerm1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseWeightedAverageRemainingLeaseTerm1", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average remaining lease term", "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": [ "r499", "r740" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Terminated", "label": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r824" ] }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "presentation": [ "http://www.cognex.com/role/NewPronouncements" ], "lang": { "en-us": { "role": { "terseLabel": "New Pronouncements", "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]", "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle." } } }, "auth_ref": [ "r142", "r143", "r145", "r148", "r190", "r191", "r194", "r195", "r204", "r205", "r273", "r274", "r432", "r433", "r434", "r454", "r458", "r462", "r463", "r464", "r474", "r475", "r476", "r489", "r490", "r503", "r541", "r542", "r543", "r579", "r580", "r581", "r582", "r583" ] }, "us-gaap_FairValueInputsLevel3Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel3Member", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unobservable Inputs (Level 3)", "label": "Fair Value, Inputs, Level 3 [Member]", "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing." } } }, "auth_ref": [ "r346", "r378", "r379", "r380", "r381", "r382", "r383", "r467", "r512", "r722", "r723", "r732", "r733", "r734" ] }, "us-gaap_LiabilityForUncertainTaxPositionsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilityForUncertainTaxPositionsNoncurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Liabilities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Reserve for income taxes", "label": "Liability for Uncertainty in Income Taxes, Noncurrent", "documentation": "Amount recognized for uncertainty in income taxes classified as noncurrent." } } }, "auth_ref": [ "r31" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "calculation": { "http://www.cognex.com/role/IntangibleAssetsDetails": { "parentTag": "us-gaap_FiniteLivedIntangibleAssetsNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross Carrying Value", "label": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r116", "r544" ] }, "us-gaap_MoneyMarketFundsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MoneyMarketFundsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails": { "parentTag": "us-gaap_CashAndCashEquivalentsAtCarryingValue", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Money market instruments", "label": "Money Market Funds, at Carrying Value", "documentation": "Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "country_KP": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "KP", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Korea", "label": "KOREA, DEMOCRATIC PEOPLE'S REPUBLIC OF" } } }, "auth_ref": [] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted", "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r824" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Total Shareholder Return Amount", "label": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r796" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Name", "label": "Company Selected Measure Name" } } }, "auth_ref": [ "r797" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated", "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r824" ] }, "us-gaap_IncomeTaxAuthorityNameAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityNameAxis", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority, Name [Axis]", "label": "Income Tax Authority, Name [Axis]", "documentation": "Information by name of taxing authority." } } }, "auth_ref": [ "r14" ] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount", "label": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r767", "r778", "r788", "r813" ] }, "us-gaap_HedgingDesignationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "HedgingDesignationDomain", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails", "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails", "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails", "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Domain]", "label": "Hedging Designation [Domain]", "documentation": "Designation of purpose of derivative instrument." } } }, "auth_ref": [ "r19" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation, Amount", "label": "Adjustment to Compensation Amount" } } }, "auth_ref": [ "r798" ] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-GAAP Measure Description", "label": "Non-GAAP Measure Description [Text Block]" } } }, "auth_ref": [ "r797" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date", "label": "Restatement Determination Date" } } }, "auth_ref": [ "r762", "r773", "r783", "r808" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r767", "r778", "r788", "r813" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount", "label": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r767", "r778", "r788", "r813" ] }, "us-gaap_AccruedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccruedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued expenses", "label": "Accrued Liabilities, Current", "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r29" ] }, "us-gaap_ProductWarrantiesDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProductWarrantiesDisclosuresAbstract", "lang": { "en-us": { "role": { "terseLabel": "Product Warranties Disclosures [Abstract]", "label": "Product Warranties Disclosures [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance as of December 31, 2022", "periodEndLabel": "Balance as of October 1, 2023", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r159", "r237", "r276", "r279", "r282", "r937" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeAxis", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Axis]", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r321", "r322", "r323", "r324", "r377", "r384", "r410", "r411", "r412", "r513", "r537", "r575", "r602", "r603", "r658", "r660", "r662", "r663", "r680", "r699", "r700", "r715", "r724", "r737", "r743", "r746", "r881", "r889", "r930", "r931", "r932", "r933", "r934" ] }, "us-gaap_InterestReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestReceivable", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued interest receivable", "label": "Interest Receivable", "documentation": "Carrying amount as of the balance sheet date of interest earned but not received. Also called accrued interest or accrued interest receivable." } } }, "auth_ref": [ "r844", "r943" ] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Gross margin", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r101", "r185", "r219", "r224", "r228", "r230", "r271", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r473", "r714", "r887" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableCurrent", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Allowance for credit losses, current", "label": "Accounts Receivable, Allowance for Credit Loss, Current", "documentation": "Amount of allowance for credit loss on accounts receivable, classified as current." } } }, "auth_ref": [ "r159", "r237", "r276" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover [Abstract]", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_ClassOfTreasuryStockTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ClassOfTreasuryStockTable", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Treasury Stock [Table]", "label": "Class of Treasury Stock [Table]", "documentation": "Disclosure of information about treasury stock, including, but not limited to, average cost per share, description of share repurchase program, shares repurchased, shares held for each class of treasury stock." } } }, "auth_ref": [ "r51", "r52", "r53", "r54" ] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MaximumMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]" } } }, "auth_ref": [ "r321", "r322", "r323", "r324", "r384", "r537", "r575", "r602", "r603", "r658", "r660", "r662", "r663", "r680", "r699", "r700", "r715", "r724", "r737", "r743", "r889", "r929", "r930", "r931", "r932", "r933", "r934" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "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": [ "r466", "r467", "r470" ] }, "us-gaap_RealizedGainLossOnInvestmentsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RealizedGainLossOnInvestmentsTableTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Realized Gain (Loss) on Investments", "label": "Realized Gain (Loss) on Investments [Table Text Block]", "documentation": "Tabular disclosure of realized gains and losses on investments reported in the statement of income." } } }, "auth_ref": [] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "RangeMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Domain]", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r321", "r322", "r323", "r324", "r377", "r384", "r410", "r411", "r412", "r513", "r537", "r575", "r602", "r603", "r658", "r660", "r662", "r663", "r680", "r699", "r700", "r715", "r724", "r737", "r743", "r746", "r881", "r889", "r930", "r931", "r932", "r933", "r934" ] }, "us-gaap_EquityClassOfTreasuryStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityClassOfTreasuryStockLineItems", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Equity, Class of Treasury Stock [Line Items]", "label": "Equity, Class of Treasury 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": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableRollforward", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "label": "Accounts Receivable, Allowance for Credit Loss [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": [] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Additional 402(v) Disclosure", "label": "Additional 402(v) Disclosure [Text Block]" } } }, "auth_ref": [ "r792" ] }, "us-gaap_LiabilitiesFairValueDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesFairValueDisclosureAbstract", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Liabilities:", "label": "Liabilities, Fair Value Disclosure [Abstract]" } } }, "auth_ref": [] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "MinimumMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]" } } }, "auth_ref": [ "r321", "r322", "r323", "r324", "r384", "r537", "r575", "r602", "r603", "r658", "r660", "r662", "r663", "r680", "r699", "r700", "r715", "r724", "r737", "r743", "r889", "r929", "r930", "r931", "r932", "r933", "r934" ] }, "us-gaap_ResearchAndDevelopmentExpenseMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ResearchAndDevelopmentExpenseMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Research, development, and engineering", "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": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RestructuringCostAndReserveLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringCostAndReserveLineItems", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Cost and Reserve [Line Items]", "label": "Restructuring Cost and Reserve [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": [ "r309", "r310", "r311", "r312", "r315", "r316", "r317" ] }, "us-gaap_RestructuringCostAndReserveAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringCostAndReserveAxis", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Type [Axis]", "label": "Restructuring Type [Axis]", "documentation": "Information by type of restructuring cost." } } }, "auth_ref": [ "r309", "r310", "r315", "r316" ] }, "currency_EUR": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "EUR", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Euro", "label": "Euro Member Countries, Euro" } } }, "auth_ref": [] }, "us-gaap_GainLossOnSaleOfInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfInvestments", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Realized (gain) loss on sale of investments", "label": "Gain (Loss) on Sale of Investments", "documentation": "The net realized gain (loss) on investments sold during the period, not including gains (losses) on securities separately or otherwise categorized as trading, available-for-sale, or held-to-maturity, which, for cash flow reporting, is a component of proceeds from investing activities." } } }, "auth_ref": [ "r11" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "calculation": { "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations", "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (shares)", "totalLabel": "Weighted-average common and common-equivalent shares outstanding (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": [ "r208", "r213" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity", "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_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "calculation": { "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of dilutive equity awards (in shares)", "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment", "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation." } } }, "auth_ref": [ "r856" ] }, "us-gaap_IncreaseDecreaseInAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsReceivable", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 8.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Accounts receivable", "label": "Increase (Decrease) in Accounts Receivable", "documentation": "The increase (decrease) during the reporting period in amount due within one year (or one business cycle) from customers for the credit sale of goods and services." } } }, "auth_ref": [ "r10" ] }, "us-gaap_DerivativeFairValueOfDerivativeAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeFairValueOfDerivativeAsset", "crdr": "debit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": "us-gaap_DerivativeAssets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Gross amounts of recognized assets", "label": "Derivative Asset, Subject to Master Netting Arrangement, before Offset", "documentation": "Fair value, before effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets elected not to be offset. Excludes assets not subject to a master netting arrangement." } } }, "auth_ref": [ "r25", "r71", "r97", "r162", "r710" ] }, "us-gaap_IncomeTaxReconciliationOtherAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationOtherAdjustments", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in tax expense related to transfer pricing and return-to-provision adjustments", "label": "Effective Income Tax Rate Reconciliation, Other Adjustments, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to other adjustments." } } }, "auth_ref": [ "r917" ] }, "us-gaap_ShortTermInvestmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShortTermInvestmentsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "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": [ "r683", "r684", "r685", "r704" ] }, "us-gaap_OperatingLeasePayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeasePayments", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease, payments", "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": [ "r494", "r498" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Property, plant, 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": [ "r13", "r551", "r561", "r741" ] }, "us-gaap_FairValueMeasurementsRecurringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsRecurringMember", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recurring", "label": "Fair Value, Recurring [Member]", "documentation": "Frequent fair value measurement. Includes, but is not limited to, fair value adjustment for impairment of asset, liability or equity, frequently measured at fair value." } } }, "auth_ref": [ "r465", "r471" ] }, "us-gaap_RestructuringAndRelatedActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestructuringAndRelatedActivitiesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Restructuring and Related Activities [Abstract]", "label": "Restructuring and Related Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Individual:", "label": "Individual [Axis]" } } }, "auth_ref": [ "r770", "r778", "r788", "r805", "r813", "r817", "r825" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "calculation": { "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails": { "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations", "http://www.cognex.com/role/WeightedAverageSharesCalculationofWeightedAverageSharesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basic (shares)", "verboseLabel": "Basic weighted-average common shares outstanding (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": [ "r207", "r213" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Executive Categories", "label": "All Executive Categories [Member]" } } }, "auth_ref": [ "r805" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Other Measure", "label": "Compensation Actually Paid vs. Other Measure [Text Block]" } } }, "auth_ref": [ "r803" ] }, "us-gaap_FairValueDisclosuresTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresTextBlock", "presentation": [ "http://www.cognex.com/role/FairValueMeasurements" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Measurements", "label": "Fair Value Disclosures [Text Block]", "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information." } } }, "auth_ref": [ "r465" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPositionLessThan12Months", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value, less than 12 months", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, Less than 12 Months", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for less than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r139", "r290", "r716" ] }, "us-gaap_DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleContinuousUnrealizedLossPosition12MonthsOrLonger", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails": { "parentTag": "us-gaap_DebtSecuritiesAvailableForSaleUnrealizedLossPosition", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value, 12 months or greater", "label": "Debt Securities, Available-for-Sale, Continuous Unrealized Loss Position, 12 Months or Longer", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), in continuous unrealized loss position for more than 12 months, without allowance for credit loss. Includes beneficial interest in securitized financial asset." } } }, "auth_ref": [ "r139", "r290", "r716" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionScheduleofAllowanceforCreditLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increases to the allowance 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": [ "r180", "r280" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/GoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign exchange rate changes", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r299" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Category:", "label": "Executive Category [Axis]" } } }, "auth_ref": [ "r805" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "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": [ "r346", "r378", "r379", "r380", "r381", "r382", "r383", "r467", "r510", "r511", "r512", "r722", "r723", "r732", "r733", "r734" ] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Tabular List, Table", "label": "Tabular List [Table Text Block]" } } }, "auth_ref": [ "r804" ] }, "us-gaap_SignificantAccountingPoliciesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SignificantAccountingPoliciesTextBlock", "presentation": [ "http://www.cognex.com/role/SummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Significant Accounting Policies", "label": "Significant Accounting Policies [Text Block]", "documentation": "The entire disclosure for all significant accounting policies of the reporting entity." } } }, "auth_ref": [ "r113", "r183" ] }, "us-gaap_IncreaseDecreaseInDeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredRevenue", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 10.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred revenue and customer deposits", "label": "Increase (Decrease) in Deferred Revenue", "documentation": "Amount of increase (decrease) in deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r701" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Amortization of intangible assets", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r11", "r44", "r47" ] }, "us-gaap_ShareholdersEquityAndShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareholdersEquityAndShareBasedPaymentsTextBlock", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpense" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-Based Compensation Expense", "label": "Shareholders' Equity and Share-Based Payments [Text Block]", "documentation": "The entire disclosure for shareholders' equity and share-based payment arrangement. Includes, but is not limited to, disclosure of policy and terms of share-based payment arrangement, deferred compensation arrangement, and employee stock purchase plan (ESPP)." } } }, "auth_ref": [ "r120", "r122" ] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Accounting Policies [Abstract]", "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DerivativeFairValueOfDerivativeLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeFairValueOfDerivativeLiability", "crdr": "credit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": "us-gaap_DerivativeLiabilities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Gross amounts of recognized liabilities", "label": "Derivative Liability, Subject to Master Netting Arrangement, before Offset", "documentation": "Fair value, before effects of master netting arrangements, of a financial liability or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes liabilities elected not to be offset. Excludes liabilities not subject to a master netting arrangement." } } }, "auth_ref": [ "r25", "r71", "r97", "r162", "r710" ] }, "currency_CAD": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "CAD", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Canadian Dollar", "label": "Canada, Dollars" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in dollars per shares)", "label": "Share-Based Compensation Arrangements by Share-Based Payment Award, Options, Grants in Period, Weighted Average Exercise Price", "documentation": "Weighted average per share amount at which grantees can acquire shares of common stock by exercise of options." } } }, "auth_ref": [ "r395" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentType", "presentation": [ "http://www.cognex.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": [] }, "currency_CHF": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "CHF", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Swiss Franc", "label": "Switzerland, Francs" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardOptionsExercisesInPeriodWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercised (in dollars per shares)", "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": [ "r396" ] }, "currency_CNY": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/currency/2023", "localname": "CNY", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Chinese Renminbi", "label": "China, Yuan Renminbi" } } }, "auth_ref": [] }, "us-gaap_FairValueByMeasurementFrequencyAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByMeasurementFrequencyAxis", "presentation": [ "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Measurement Frequency [Axis]", "label": "Measurement Frequency [Axis]", "documentation": "Information by measurement frequency." } } }, "auth_ref": [ "r466", "r467", "r468", "r469", "r471" ] }, "us-gaap_OperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiability", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liability", "label": "Operating Lease, Liability", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease." } } }, "auth_ref": [ "r493" ] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.cognex.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": [ "r758" ] }, "us-gaap_Depreciation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Depreciation", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Depreciation of property, plant, and equipment", "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": [ "r11", "r48" ] }, "us-gaap_DeferredRevenueRevenueRecognized1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueRevenueRecognized1", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Recognition of revenue deferred in prior period", "label": "Deferred Revenue, Revenue Recognized", "documentation": "Amount of revenue recognized that was previously reported as deferred or unearned revenue." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePriceRollforward", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted- Average Exercise Price", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInDeferredIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInDeferredIncomeTaxes", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Change in deferred income taxes", "label": "Increase (Decrease) in Deferred Income Taxes", "documentation": "The increase (decrease) during the reporting period in the account that represents the temporary difference that results from Income or Loss that is recognized for accounting purposes but not for tax purposes and vice versa." } } }, "auth_ref": [ "r10" ] }, "us-gaap_DeferredRevenueRefundPayments1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenueRefundPayments1", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Returned customer deposit", "label": "Deferred Revenue, Refund Payments", "documentation": "Amount of cash outflow to customers for refund payments of revenue that was previously reported as deferred or unearned revenue." } } }, "auth_ref": [] }, "us-gaap_DeferredRevenue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredRevenue", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance as of December 31, 2022", "periodEndLabel": "Balance as of October 1, 2023", "label": "Deferred Revenue", "documentation": "Amount of deferred income and obligation to transfer product and service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r843" ] }, "us-gaap_DerivativeGainLossOnDerivativeNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeGainLossOnDerivativeNet", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails", "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gains (losses) recognized in current operations", "label": "Derivative, Gain (Loss) on Derivative, Net", "documentation": "Amount of increase (decrease) in the fair value of derivatives recognized in the income statement." } } }, "auth_ref": [ "r921" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liabilities", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r493" ] }, "cgnx_December2022Member": { "xbrltype": "domainItemType", "nsuri": "http://www.cognex.com/20231001", "localname": "December2022Member", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "December 2022", "label": "December 2022 [Member]", "documentation": "December 2022" } } }, "auth_ref": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "DocumentTransitionReport", "presentation": [ "http://www.cognex.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": [ "r791" ] }, "us-gaap_PerformanceSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PerformanceSharesMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Performance Shares (PRSUs)", "label": "Performance Shares [Member]", "documentation": "Share-based payment arrangement awarded for meeting performance target." } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted (usd 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": [ "r179", "r196", "r197", "r198", "r199", "r200", "r209", "r211", "r212", "r213", "r217", "r460", "r461", "r548", "r566", "r712" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instrument [Axis]", "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r69", "r72", "r74", "r75", "r600", "r603", "r617", "r618", "r619", "r621", "r622", "r623", "r624", "r626", "r627", "r628", "r629", "r639", "r640", "r641", "r642", "r645", "r646", "r647", "r648", "r666", "r667", "r673", "r676", "r710", "r744", "r746" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Other assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r156" ] }, "us-gaap_IncomeTaxReconciliationStateAndLocalIncomeTaxes": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationStateAndLocalIncomeTaxes", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in tax expense related to state income taxes", "label": "Effective Income Tax Rate Reconciliation, State and Local Income Taxes, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to state and local income tax expense (benefit)." } } }, "auth_ref": [ "r917" ] }, "srt_ProductsAndServicesDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductsAndServicesDomain", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Domain]", "label": "Product and Service [Domain]" } } }, "auth_ref": [ "r231", "r539", "r569", "r570", "r571", "r572", "r573", "r574", "r702", "r725", "r742", "r833", "r885", "r886", "r890", "r938" ] }, "us-gaap_IncomeTaxContingencyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxContingencyTable", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Contingency [Table]", "label": "Income Tax Contingency [Table]", "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months." } } }, "auth_ref": [ "r15", "r61", "r125", "r126" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets", "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "totalLabel": "Total shareholders\u2019 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": [ "r87", "r90", "r91", "r114", "r614", "r631", "r653", "r654", "r741", "r754", "r852", "r866", "r923", "r941" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets", "http://www.cognex.com/role/GoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "periodStartLabel": "Balance as of December 31, 2022", "periodEndLabel": "Balance as of October 1, 2023", "label": "Goodwill", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r154", "r297", "r545", "r717", "r741", "r871", "r878" ] }, "us-gaap_IncomeTaxContingencyLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxContingencyLineItems", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Contingency [Line Items]", "label": "Income Tax Contingency [Line Items]", "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table." } } }, "auth_ref": [] }, "srt_ProductOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ProductOrServiceAxis", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Product and Service [Axis]", "label": "Product and Service [Axis]" } } }, "auth_ref": [ "r231", "r539", "r569", "r570", "r571", "r572", "r573", "r574", "r702", "r725", "r742", "r833", "r885", "r886", "r890", "r938" ] }, "us-gaap_DerivativeLiabilityCollateralRightToReclaimCashOffset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeLiabilityCollateralRightToReclaimCashOffset", "crdr": "debit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": "us-gaap_DerivativeLiabilities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gross amounts offset", "label": "Derivative Liability, Subject to Master Netting Arrangement, Collateral, Right to Reclaim Cash Offset", "documentation": "Amount of right to receive cash collateral under master netting arrangements offset against derivative liabilities." } } }, "auth_ref": [ "r12", "r23" ] }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 9.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Prepaid expenses and other current 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": [ "r10" ] }, "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Effective Maturity Dates of Available-for-Sale Investments", "label": "Investments Classified by Contractual Maturity Date [Table Text Block]", "documentation": "Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments." } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies", "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": [ "r32", "r81", "r556", "r611" ] }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalCommonStock", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid in Capital, Common Stock", "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital." } } }, "auth_ref": [ "r88" ] }, "us-gaap_DerivativeAssetCollateralObligationToReturnCashOffset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeAssetCollateralObligationToReturnCashOffset", "crdr": "credit", "calculation": { "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails": { "parentTag": "us-gaap_DerivativeAssets", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsOffsettingAssetsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Gross amounts offset", "label": "Derivative Asset, Subject to Master Netting Arrangement, Collateral, Obligation to Return Cash, Offset Against Derivative Asset", "documentation": "Amount of obligation to return cash collateral under master netting arrangements offset against derivative assets." } } }, "auth_ref": [ "r12", "r23" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Forfeited or expired (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Forfeited in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period." } } }, "auth_ref": [ "r404" ] }, "us-gaap_GoodwillRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillRollForward", "presentation": [ "http://www.cognex.com/role/GoodwillDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill [Roll Forward]", "label": "Goodwill [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "documentation": "The number of grants made during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r402" ] }, "us-gaap_MovementInDeferredRevenueRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MovementInDeferredRevenueRollForward", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionDeferredRevenueActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Movement in Deferred Revenue [Roll Forward]", "label": "Movement in Deferred Revenue [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_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan)." } } }, "auth_ref": [ "r402" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Nonvested as of beginning of period (in shares)", "periodEndLabel": "Nonvested as of end of period (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number", "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date." } } }, "auth_ref": [ "r399", "r400" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Nonvested as of beginning of period (in dollars per share)", "periodEndLabel": "Nonvested as of end of period (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r399", "r400" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized compensation expense", "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": [ "r415" ] }, "us-gaap_HedgingDesignationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "HedgingDesignationAxis", "presentation": [ "http://www.cognex.com/role/DerivativeInstrumentsDerivativeInstrumentsGainLossDetails", "http://www.cognex.com/role/DerivativeInstrumentsNarrativeDetails", "http://www.cognex.com/role/DerivativeInstrumentsOutstandingForwardContractsTableDetails", "http://www.cognex.com/role/DerivativeInstrumentsScheduleofDerivativeInstrumentsinStatementofFinancialPositionFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Axis]", "label": "Hedging Designation [Axis]", "documentation": "Information by designation of purpose of derivative instrument." } } }, "auth_ref": [ "r19", "r447" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Axis]", "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r62", "r63", "r441", "r735", "r736" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested (in shares)", "negatedTerseLabel": "Vested (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period", "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period." } } }, "auth_ref": [ "r403" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_IncomeTaxReconciliationTaxSettlements": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationTaxSettlements", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Decrease in tax expense arising from tax settlement", "label": "Effective Income Tax Rate Reconciliation, Tax Settlement, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to income tax settlements. Including, but not limited to, domestic tax settlement, foreign tax settlement, state and local tax settlement, and other tax settlements." } } }, "auth_ref": [ "r917" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement." } } }, "auth_ref": [ "r403" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of property, plant, 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": [ "r109" ] }, "us-gaap_MovementInStandardProductWarrantyAccrualRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MovementInStandardProductWarrantyAccrualRollForward", "presentation": [ "http://www.cognex.com/role/WarrantyObligationsDetail" ], "lang": { "en-us": { "role": { "terseLabel": "Movement in Standard Product Warranty Accrual [Roll Forward]", "label": "Movement in Standard Product Warranty Accrual [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_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Acquiree [Domain]", "label": "Business Acquisition, Acquiree [Domain]", "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree." } } }, "auth_ref": [ "r441", "r735", "r736" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r277", "r278", "r283", "r284", "r285", "r287", "r291", "r292", "r347", "r360", "r456", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r564", "r716", "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r862", "r863", "r864", "r865" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity", "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "verboseLabel": "Foreign currency translation adjustments", "terseLabel": "Foreign currency translation adjustment", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r5" ] }, "us-gaap_ContractTerminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractTerminationMember", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Contract Termination Costs", "label": "Contract Termination [Member]", "documentation": "Termination of a contract associated with exit from or disposal of business activities or restructurings pursuant to a plan." } } }, "auth_ref": [ "r718", "r719", "r720", "r721" ] }, "us-gaap_IncomeTaxAuthorityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityAxis", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority [Axis]", "label": "Income Tax Authority [Axis]", "documentation": "Information by tax jurisdiction." } } }, "auth_ref": [ "r14" ] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_TypeOfRestructuringDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TypeOfRestructuringDomain", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Type of Restructuring [Domain]", "label": "Type of Restructuring [Domain]", "documentation": "Identification of the types of restructuring costs." } } }, "auth_ref": [ "r309", "r310", "r315", "r316" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date:", "label": "Restatement Determination Date [Axis]" } } }, "auth_ref": [ "r761", "r772", "r782", "r807" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAuthorized", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares auhtorised for grant under stock option plans (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": [ "r739" ] }, "us-gaap_SovereignDebtMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SovereignDebtMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Sovereign bonds", "label": "Sovereign Debt [Member]", "documentation": "Debt securities that are issued or guaranteed by a national government." } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardNumberOfSharesAvailableForGrant", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares available for grant under stock option plans (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Number of Shares Available for Grant", "documentation": "The difference between the maximum number of shares (or other type of equity) authorized for issuance under the plan (including the effects of amendments and adjustments), and the sum of: 1) the number of shares (or other type of equity) already issued upon exercise of options or other equity-based awards under the plan; and 2) shares (or other type of equity) reserved for issuance on granting of outstanding awards, net of cancellations and forfeitures, if applicable." } } }, "auth_ref": [ "r55" ] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of foreign exchange rate changes on cash and cash equivalents", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r481" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net change in cash and cash equivalents", "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": [ "r3", "r110" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriod", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Granted (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Net of Forfeitures", "documentation": "Net number of share options (or share units) granted during the period." } } }, "auth_ref": [ "r898" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "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": [ "r10" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted-average grant-date fair values (in dollars per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value", "documentation": "The weighted average grant-date fair value of options granted during the reporting period as calculated by applying the disclosed option pricing methodology." } } }, "auth_ref": [ "r405" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareByAntidilutiveSecuritiesAxis", "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Antidilutive Securities [Axis]", "label": "Antidilutive Securities [Axis]", "documentation": "Information by type of antidilutive security." } } }, "auth_ref": [ "r42" ] }, "us-gaap_StockOptionPlanExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockOptionPlanExpense", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Stock-based compensation expense", "label": "Stock or Unit Option Plan Expense", "documentation": "Amount of noncash expense for option under share-based payment arrangement." } } }, "auth_ref": [ "r11" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash and cash equivalents at beginning of period", "periodEndLabel": "Cash and cash equivalents at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r40", "r110", "r182" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued expenses", "label": "Increase (Decrease) in Accrued Liabilities", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid." } } }, "auth_ref": [ "r10" ] }, "us-gaap_EarningsPerShareDilutedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "terseLabel": "Net income per weighted-average common and common-equivalent share:", "label": "Earnings Per Share, Diluted [Abstract]" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.cognex.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": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Intrinsic Value", "documentation": "Amount by which the current fair value of the underlying stock exceeds the exercise price of options outstanding." } } }, "auth_ref": [ "r55" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingNumber", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Outstanding (in shares)", "periodEndLabel": "Outstanding (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Number", "documentation": "Number of options outstanding, including both vested and non-vested options." } } }, "auth_ref": [ "r391", "r392" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Outstanding (in dollars per shares)", "periodEndLabel": "Outstanding (in dollars per shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding, Weighted Average Exercise Price", "documentation": "Weighted average price at which grantees can acquire the shares reserved for issuance under the stock option plan." } } }, "auth_ref": [ "r391", "r392" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableNumber", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable as of reporting date (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Number", "documentation": "The number of shares into which fully or partially vested stock options outstanding as of the balance sheet date can be currently converted under the option plan." } } }, "auth_ref": [ "r393" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.cognex.com/role/WeightedAverageSharesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Anti-dilutive securities excluded from computation of earnings per share (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": [ "r214" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsExercisableWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Exercisable as of reporting date (in dollars per shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercisable, Weighted Average Exercise Price", "documentation": "The weighted-average price as of the balance sheet date at which grantees can acquire the shares reserved for issuance on vested portions of options outstanding and currently exercisable under the stock option plan." } } }, "auth_ref": [ "r393" ] }, "us-gaap_PaymentsToAcquireInvestments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsToAcquireInvestments", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedLabel": "Purchases of investments", "label": "Payments to Acquire Investments", "documentation": "The cash outflow associated with the purchase of all investments (debt, security, other) during the period." } } }, "auth_ref": [ "r108" ] }, "us-gaap_IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxReconciliationChangeInDeferredTaxAssetsValuationAllowance", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Change in tax expense related to valuation allowance", "label": "Effective Income Tax Rate Reconciliation, Change in Deferred Tax Assets Valuation Allowance, Amount", "documentation": "Amount of the difference between reported income tax expense (benefit) and expected income tax expense (benefit) computed by applying the domestic federal statutory income tax rates to pretax income (loss) from continuing operations attributable to increase (decrease) in the valuation allowance for deferred tax assets." } } }, "auth_ref": [ "r917" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Income before income tax expense", "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": [ "r0", "r99", "r134", "r219", "r224", "r228", "r230", "r549", "r562", "r714" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedDividendRate", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected dividend yield", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Dividend Rate", "documentation": "The estimated dividend rate (a percentage of the share price) to be paid (expected dividends) to holders of the underlying shares over the option's term." } } }, "auth_ref": [ "r411" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by (used in) 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": [ "r181" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share [Abstract]", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsRiskFreeInterestRate", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Risk-free rate", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Risk Free Interest Rate", "documentation": "The risk-free interest rate assumption that is used in valuing an option on its own shares." } } }, "auth_ref": [ "r412" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from investing activities:", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "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": [ "r181" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneously Awarded Compensation Recovery", "label": "Erroneously Awarded Compensation Recovery [Table]" } } }, "auth_ref": [ "r760", "r771", "r781", "r806" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardFairValueAssumptionsExpectedVolatilityRate", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseWeightedAverageAssumptionsUsedinEstimatingFairValuesofStockOptionsGrantedDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected volatility", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Fair Value Assumptions, Expected Volatility Rate", "documentation": "The estimated measure of the percentage by which a share price is expected to fluctuate during a period. Volatility also may be defined as a probability-weighted measure of the dispersion of returns about the mean. The volatility of a share price is the standard deviation of the continuously compounded rates of return on the share over a specified period. That is the same as the standard deviation of the differences in the natural logarithms of the stock prices plus dividends, if any, over the period." } } }, "auth_ref": [ "r410" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Cash flows from financing activities:", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfRestructuringAndRelatedCostsTable", "presentation": [ "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Restructuring and Related Costs [Table]", "label": "Schedule of Restructuring and Related Costs [Table]", "documentation": "Table presenting the description of the restructuring costs, such as the expected cost; the costs incurred during the period; the cumulative costs incurred as of the balance sheet date; the income statement caption within which the restructuring charges recognized for the period are included; and the amount of and periodic changes to an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost by type of restructuring." } } }, "auth_ref": [ "r309", "r310", "r311", "r312", "r315", "r316", "r317" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical", "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, shares issued (in shares)", "periodStartLabel": "Beginning Balance (in shares)", "periodEndLabel": "Ending Balance (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": [ "r87" ] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.cognex.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "terseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r186", "r421", "r426", "r427", "r429", "r435", "r438", "r439", "r440", "r587" ] }, "us-gaap_FairValueDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueDisclosuresAbstract", "lang": { "en-us": { "role": { "terseLabel": "Fair Value Disclosures [Abstract]", "label": "Fair Value Disclosures [Abstract]" } } }, "auth_ref": [] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Amount", "label": "Outstanding Recovery Compensation Amount" } } }, "auth_ref": [ "r768", "r779", "r789", "r814" ] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.cognex.com/role/SubsequentEvents" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events", "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r504", "r506" ] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Available-for-Sale Investments", "label": "Schedule of Available-for-Sale Securities Reconciliation [Table Text Block]", "documentation": "Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value." } } }, "auth_ref": [] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r87", "r612" ] }, "srt_EuropeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "EuropeMember", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Europe", "label": "Europe [Member]" } } }, "auth_ref": [ "r944", "r945", "r946", "r947" ] }, "us-gaap_CostOfGoodsTotalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CostOfGoodsTotalMember", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofEmployeeServiceSharebasedCompensationAllocationofRecognizedPeriodCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of revenue", "label": "Cost of Goods and Service Benchmark [Member]", "documentation": "Cost of product sold and service rendered, when it serves as benchmark in concentration of risk calculation." } } }, "auth_ref": [ "r832" ] }, "us-gaap_IncomeTaxAuthorityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxAuthorityDomain", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Authority [Domain]", "label": "Income Tax Authority [Domain]", "documentation": "Agency, division or body classification that levies income taxes, examines tax returns for compliance, or grants exemptions from or makes other decisions pertaining to income taxes." } } }, "auth_ref": [] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "auth_ref": [ "r816" ] }, "us-gaap_EstimatedInsuranceRecoveries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EstimatedInsuranceRecoveries", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated insurance recoveries", "label": "Estimated Insurance Recoveries", "documentation": "Carrying amount as of the balance sheet date of amounts expected to be recovered under the terms of insurance contracts." } } }, "auth_ref": [ "r842" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Outstanding Recovery, Individual Name" } } }, "auth_ref": [ "r768", "r779", "r789", "r814" ] }, "us-gaap_IncreaseDecreaseInAccruedTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedTaxesPayable", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 15.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued income taxes", "label": "Increase (Decrease) in Accrued Taxes Payable", "documentation": "The increase (decrease) during the reporting period of all taxes owed but not paid, including income, property and other taxes." } } }, "auth_ref": [ "r850" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheetsParenthetical" ], "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": [ "r18", "r87", "r612", "r631", "r941", "r942" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations" ], "lang": { "en-us": { "role": { "totalLabel": "Operating income", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r219", "r224", "r228", "r230", "r714" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsOutstandingRollForward", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares (in\u00a0thousands)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Outstanding [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_ValuationAllowanceDeferredTaxAssetChangeInAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ValuationAllowanceDeferredTaxAssetChangeInAmount", "crdr": "credit", "presentation": [ "http://www.cognex.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Increase in tax expense to establish reserve against certain deferred tax assets", "label": "Valuation Allowance, Deferred Tax Asset, Increase (Decrease), Amount", "documentation": "Amount of increase (decrease) in the valuation allowance for a specified deferred tax asset." } } }, "auth_ref": [ "r428" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement does not require Recovery", "label": "Restatement Does Not Require Recovery [Text Block]" } } }, "auth_ref": [ "r769", "r780", "r790", "r815" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Available-for-sale investments:", "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Inventory Disclosure [Abstract]", "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsAdditionalDisclosuresAbstract", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted- Average Remaining Contractual Term\u00a0(in\u00a0years)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Additional Disclosures [Abstract]" } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityRegistrantName", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets", "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease assets", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r492" ] }, "us-gaap_TreasuryStockValueAcquiredCostMethod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TreasuryStockValueAcquiredCostMethod", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockRepurchaseProgramDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Value of shares repurchased at cost", "label": "Treasury Stock, Value, Acquired, Cost Method", "documentation": "Equity impact of the cost of common and preferred stock that were repurchased during the period. Recorded using the cost method." } } }, "auth_ref": [ "r18", "r51", "r121" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery, Explanation of Impracticability", "label": "Forgone Recovery, Explanation of Impracticability [Text Block]" } } }, "auth_ref": [ "r767", "r778", "r788", "r813" ] }, "us-gaap_DevelopedTechnologyRightsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DevelopedTechnologyRightsMember", "presentation": [ "http://www.cognex.com/role/IntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Completed technologies", "label": "Developed Technology Rights [Member]", "documentation": "Rights to developed technology, which can include the right to develop, use, market, sell, or offer for sale products, compounds, or intellectual property." } } }, "auth_ref": [ "r127" ] }, "us-gaap_CommonStockDividendsPerShareDeclared": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockDividendsPerShareDeclared", "presentation": [ "http://www.cognex.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends (in dollars per share)", "label": "Common Stock, Dividends, Per Share, Declared", "documentation": "Aggregate dividends declared during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r121" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofPerformanceRestrictedStockUnitsDetails", "http://www.cognex.com/role/StockBasedCompensationExpenseScheduleofRestrictedStockUnitsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Shares (in thousands)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [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_UnusualOrInfrequentItemAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemAxis", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unusual or Infrequent Item, or Both [Axis]", "label": "Unusual or Infrequent Item, or Both [Axis]", "documentation": "Information by an event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r107" ] }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodNetOfTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome": { "parentTag": "us-gaap_OtherComprehensiveIncomeAvailableforsaleSecuritiesAdjustmentNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquity", "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Net unrealized gain (loss) on available-for-sale investments, net of tax", "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, after Tax", "documentation": "Amount, after tax and before adjustment, of unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r166", "r168", "r270" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 18.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "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": [ "r10" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedBalanceSheets": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedBalanceSheets" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r27", "r741" ] }, "srt_AmericasMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "AmericasMember", "presentation": [ "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Americas", "label": "Americas [Member]" } } }, "auth_ref": [ "r944", "r945", "r946", "r947" ] }, "us-gaap_UnusualOrInfrequentItemDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemDomain", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unusual or Infrequent Item, or Both [Domain]", "label": "Unusual or Infrequent Item, or Both [Domain]", "documentation": "Event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r107" ] }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementofShareholdersEquityParenthetical", "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncomeParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Tax effect of unrealized gain (loss) on available-for-sale investments", "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax", "documentation": "Amount, before adjustment, of tax expense (benefit) for unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r6", "r167" ] }, "us-gaap_OtherCurrentAssetsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherCurrentAssetsMember", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other current assets", "label": "Other Current Assets [Member]", "documentation": "Primary financial statement caption encompassing other current assets." } } }, "auth_ref": [ "r68", "r78" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Disclosure", "label": "Award Timing MNPI Disclosure [Text Block]" } } }, "auth_ref": [ "r816" ] }, "us-gaap_UnusualOrInfrequentItemLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemLineItems", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unusual or Infrequent Item, or Both [Line Items]", "label": "Unusual or Infrequent Item, or Both [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": [] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Method", "label": "Award Timing Method [Text Block]" } } }, "auth_ref": [ "r816" ] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsComponentsofCashCashEquivalentsandInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsEffectiveMaturityDatesofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsGrossUnrealizedLossesandFairValuesforAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/FairValueMeasurementsDetails" ], "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": [ "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r347", "r360", "r456", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r518", "r519", "r520", "r521", "r522", "r523", "r524", "r525", "r526", "r527", "r528", "r529", "r530", "r531", "r532", "r533", "r534", "r535", "r536", "r564", "r834", "r835", "r836", "r837", "r838", "r839", "r840", "r862", "r863", "r864", "r865" ] }, "us-gaap_BalanceSheetLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationDomain", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location [Domain]", "label": "Balance Sheet Location [Domain]", "documentation": "Location in the balance sheet (statement of financial position)." } } }, "auth_ref": [ "r68", "r73" ] }, "us-gaap_ComprehensiveIncomeNetOfTaxAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ComprehensiveIncomeNetOfTaxAbstract", "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofComprehensiveIncome" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive income (loss), net of tax:", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Predetermined", "label": "Award Timing Predetermined [Flag]" } } }, "auth_ref": [ "r816" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityFileNumber", "presentation": [ "http://www.cognex.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": [] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Considered", "label": "Award Timing MNPI Considered [Flag]" } } }, "auth_ref": [ "r816" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingAggregateIntrinsicValue", "crdr": "debit", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options vested or expected to vest", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Aggregate Intrinsic Value", "documentation": "Amount by which current fair value of underlying stock exceeds exercise price of fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r407" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestOutstandingWeightedAverageExercisePrice", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vested and expected to vest (in dollars per shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Outstanding, Weighted Average Exercise Price", "documentation": "Weighted-average exercise price, at which grantee can acquire shares reserved for issuance, for fully vested and expected to vest options outstanding. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r407" ] }, "us-gaap_UnusualOrInfrequentItemTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnusualOrInfrequentItemTable", "presentation": [ "http://www.cognex.com/role/LossRecoveryfromFireDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unusual or Infrequent Item, or Both [Table]", "label": "Unusual or Infrequent Item, or Both [Table]", "documentation": "Disclosure of information about the nature and financial statement effect of an event or transaction that is unusual in nature or infrequent in occurrence, or both." } } }, "auth_ref": [ "r107" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofOperations": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofOperations", "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyGeographyDetails", "http://www.cognex.com/role/RevenueRecognitionRevenueDisaggregatedbyProductsandServicesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r220", "r221", "r223", "r226", "r227", "r231", "r232", "r234", "r373", "r374", "r539" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsVestedAndExpectedToVestExercisableNumber", "presentation": [ "http://www.cognex.com/role/StockBasedCompensationExpenseSummaryofStockOptionActivityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Options vested or expected to vest as of reporting date (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Vested and Expected to Vest, Exercisable, Number", "documentation": "Number of fully vested and expected to vest exercisable options that may be converted into shares under option plan. Includes, but is not limited to, unvested options for which requisite service period has not been rendered but that are expected to vest based on achievement of performance condition, if forfeitures are recognized when they occur." } } }, "auth_ref": [ "r408" ] }, "us-gaap_BalanceSheetLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "BalanceSheetLocationAxis", "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsNarrativeDetails", "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails", "http://www.cognex.com/role/RestructuringChargesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Balance Sheet Location [Axis]", "label": "Balance Sheet Location [Axis]", "documentation": "Information by location on balance sheet (statement of financial position)." } } }, "auth_ref": [] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing, How MNPI Considered", "label": "Award Timing, How MNPI Considered [Text Block]" } } }, "auth_ref": [ "r816" ] }, "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherOperatingCapitalNet", "crdr": "credit", "calculation": { "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 16.0 } }, "presentation": [ "http://www.cognex.com/role/ConsolidatedStatementsofCashFlows" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other", "label": "Increase (Decrease) in Other Operating Assets and Liabilities, Net", "documentation": "Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other." } } }, "auth_ref": [ "r10" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "MNPI Disclosure Timed for Compensation Value", "label": "MNPI Disclosure Timed for Compensation Value [Flag]" } } }, "auth_ref": [ "r816" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "crdr": "debit", "calculation": { "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.cognex.com/role/CashCashEquivalentsandInvestmentsSummaryofAvailableforSaleInvestmentsDetails" ], "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": [ "r240", "r286", "r552" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.cognex.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": [ "r756" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures, Table", "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]" } } }, "auth_ref": [ "r817" ] }, "country_SG": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "SG", "presentation": [ "http://www.cognex.com/role/LeasesNarrativeDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Singapore", "label": "SINGAPORE" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "6", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-6" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "7", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479405/805-10-25-7" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r4": { "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" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "SubTopic": "405", "Topic": "942", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481071/942-405-45-2" }, "r9": { "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" }, "r10": { "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" }, "r11": { "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" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480463/815-10-45-5" }, "r13": { "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" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r16": { "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" }, "r17": { "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" }, "r18": { "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" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-2" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)", "SubTopic": "10", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "SubTopic": "20", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "a", "SubTopic": "10", "Topic": "280", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(c)(2)", "SubTopic": "20", "Topic": "860", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4D" }, "r26": { "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" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19-26)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.25)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r34": { "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" }, "r35": { "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" }, "r36": { "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" }, "r37": { "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" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r40": { "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" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r42": { "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" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r48": { "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" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "420", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "420", "SubTopic": "10", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-2" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-3" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "30", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4" }, "r55": { "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" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12" }, "r60": { "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" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1B" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4" }, "r68": { "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" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a),(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r73": { "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" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4C" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4D", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-5" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-8" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "55", "Paragraph": "182", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480401/815-10-55-182" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "25", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480238/815-25-50-1" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.15(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "942", "SubTopic": "210", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03.17)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "985", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481283/985-20-50-1" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "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" }, "r95": { "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" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-7" }, "r98": { "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" }, "r99": { "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" }, "r100": { "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" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r103": { "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.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r104": { "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" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r106": { "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" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483613/220-20-50-1" }, "r108": { "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" }, "r109": { "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" }, "r110": { "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" }, "r111": { "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" }, "r112": { "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" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "235", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//235/tableOfContent" }, "r114": { "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" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r117": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r118": { "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" }, "r119": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r120": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//505/tableOfContent" }, "r121": { "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" }, "r122": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r123": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(e)(1)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r124": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "718", "SubTopic": "10", "Subparagraph": "(f)(2)", "Name": "Accounting Standards Codification", "Paragraph": "2", "Section": "50", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r125": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r126": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r127": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "38", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-38" }, "r128": { "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" }, "r129": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//815/tableOfContent" }, "r130": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r131": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(15)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r132": { "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/2147479853/942-210-S99-1" }, "r133": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r134": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r135": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r136": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-6" }, "r137": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-6" }, "r138": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-6" }, "r139": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-7" }, "r140": { "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" }, "r141": { "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/2147480555/946-210-45-20" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "SubTopic": "20", "Topic": "310", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481925/310-20-65-2" }, "r144": { "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" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "250", "Publisher": "FASB", "URI": "https://asc.fasb.org//250/tableOfContent" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-4" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-10" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-17A" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r192": { "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" }, "r193": { "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" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483443/250-10-50-1" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SAB Topic 11.M.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-5" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480530/250-10-S99-6" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30" }, "r225": { "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" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9" }, "r237": { "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" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481830/320-10-45-2" }, "r239": { "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" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481800/320-10-50-9" }, "r271": { "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" }, "r272": { "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" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-4" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r280": { "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" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-4" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-5" }, "r291": { "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" }, "r292": { "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" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479106/326-30-50-9" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-20/tableOfContent" }, "r297": { "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" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350-30/tableOfContent" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r306": { "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" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//420/tableOfContent" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r311": { "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" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB TOPIC 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-4" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "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)(5))", "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": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B" }, "r342": { "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" }, "r343": { "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" }, "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)(iv))", "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)(5))", "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": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r410": { "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" }, "r411": { "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" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r419": { "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" }, "r420": { "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" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6" }, "r424": { "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" }, "r425": { "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" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-2" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21" }, "r430": { "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" }, "r431": { "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" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r436": { "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" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.Fact.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479581/805-30-50-1" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4E" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-5C" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1" }, "r459": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-2" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-6A" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-10" }, "r473": { "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" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482833/825-10-65-6" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481839/830-10-45-17" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482014/830-20-35-1" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481956/830-20-45-1" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481926/830-20-50-1" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1" }, "r482": { "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" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "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" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-2" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479832/842-10-65-5" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//842-20/tableOfContent" }, "r492": { "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" }, "r493": { "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" }, "r494": { "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" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//855/tableOfContent" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483399/855-10-50-2" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "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" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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" }, "r530": { "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" }, "r531": { "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" }, "r532": { "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" }, "r533": { "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" }, "r534": { "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" }, "r535": { "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" }, "r536": { "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" }, "r537": { "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" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11" }, "r539": { "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" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483194/926-20-65-2" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r546": { "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/2147479853/942-210-S99-1" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479557/942-235-S99-1" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480832/942-320-50-3A" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480842/942-360-50-1" }, "r552": { "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/2147479440/944-210-S99-1" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r557": { "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/2147479440/944-210-S99-1" }, "r558": { "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/2147479440/944-210-S99-1" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r567": { "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)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1" }, "r569": { "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/2147480149/944-235-S99-2" }, "r570": { "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/2147480149/944-235-S99-2" }, "r571": { "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/2147480149/944-235-S99-2" }, "r572": { "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/2147480149/944-235-S99-2" }, "r573": { "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/2147480149/944-235-S99-2" }, "r574": { "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/2147480149/944-235-S99-2" }, "r575": { "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" }, "r576": { "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" }, "r577": { "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" }, "r578": { "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" }, "r579": { "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" }, "r580": { "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" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2" }, "r583": { "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" }, "r584": { "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" }, "r585": { "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" }, "r586": { "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" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r589": { "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/2147480555/946-210-45-21" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r593": { "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/2147480524/946-210-50-1" }, "r594": { "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/2147480524/946-210-50-1" }, "r595": { "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/2147480524/946-210-50-1" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-12" }, "r597": { "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/2147480524/946-210-50-2" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r599": { "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/2147480524/946-210-50-6" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r620": { "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/2147479617/946-210-S99-1" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r649": { "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))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481062/946-235-50-2" }, "r657": { "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 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r659": { "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/2147480032/946-320-S99-1" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r661": { "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/2147480032/946-320-S99-2" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r664": { "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 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r665": { "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/2147480032/946-320-S99-3" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5A", "Subparagraph": "(SX 210.12-13A(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5A" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5A", "Subparagraph": "(SX 210.12-13A(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5A" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5D", "Subparagraph": "(SX 210.12-13D(Column B)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5D", "Subparagraph": "(SX 210.12-13D(Column C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5D" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r681": { "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/2147480032/946-320-S99-6" }, "r682": { "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 A))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-7" }, "r683": { "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/2147480032/946-320-S99-7" }, "r684": { "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/2147480032/946-320-S99-7" }, "r685": { "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/2147480032/946-320-S99-7" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-6" }, "r688": { "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(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1" }, "r690": { "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/2147479438/970-360-S99-1" }, "r691": { "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/2147479438/970-360-S99-1" }, "r692": { "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/2147479438/970-360-S99-1" }, "r693": { "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/2147479438/970-360-S99-1" }, "r694": { "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/2147479438/970-360-S99-1" }, "r695": { "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/2147479438/970-360-S99-1" }, "r696": { "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/2147479438/970-360-S99-1" }, "r697": { "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/2147479438/970-360-S99-1" }, "r698": { "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(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1" }, "r701": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28" }, "r702": { "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" }, "r703": { "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" }, "r704": { "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/2147480032/946-320-S99-7" }, "r705": { "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" }, "r706": { "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" }, "r707": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r708": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r709": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r710": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-22" }, "r711": { "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" }, "r712": { "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" }, "r713": { "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" }, "r714": { "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" }, "r715": { "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" }, "r716": { "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" }, "r717": { "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" }, "r718": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r719": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r720": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r721": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r722": { "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" }, "r723": { "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" }, "r724": { "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" }, "r725": { "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" }, "r726": { "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" }, "r727": { "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" }, "r728": { "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" }, "r729": { "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" }, "r730": { "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" }, "r731": { "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" }, "r732": { "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" }, "r733": { "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" }, "r734": { "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" }, "r735": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11" }, "r736": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6" }, "r737": { "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" }, "r738": { "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" }, "r739": { "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" }, "r740": { "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" }, "r741": { "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" }, "r742": { "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" }, "r743": { "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" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10" }, "r753": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11" }, "r754": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12" }, "r755": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r756": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r757": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r758": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r759": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r760": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r761": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r762": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r763": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r764": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r765": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r766": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r767": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r768": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r769": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r770": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r771": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r772": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r773": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r774": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r775": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r776": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r777": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r778": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r779": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r780": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r781": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r782": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r783": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r784": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r785": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r786": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r787": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r788": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r789": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r790": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r791": { "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" }, "r792": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r793": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r794": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r795": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r796": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r797": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r798": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r799": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r800": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r801": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r802": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r803": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r804": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r805": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r806": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r807": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r808": { "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" }, "r809": { "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" }, "r810": { "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" }, "r811": { "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" }, "r812": { "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" }, "r813": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r814": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r815": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r818": { "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" }, "r819": { "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" }, "r820": { "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" }, "r821": { "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" }, "r822": { "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" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r831": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "SubTopic": "740", "Topic": "718", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480887/718-740-35-2" }, "r832": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "SubTopic": "10", "Topic": "275", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482861/275-10-50-18" }, "r833": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r834": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r835": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r836": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r837": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r838": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r839": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r840": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r841": { "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" }, "r842": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r843": { "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(26)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r844": { "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(3)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r845": { "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" }, "r846": { "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" }, "r847": { "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" }, "r848": { "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" }, "r849": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-17" }, "r850": { "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" }, "r851": { "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" }, "r852": { "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" }, "r853": { "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" }, "r854": { "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" }, "r855": { "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" }, "r856": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1" }, "r857": { "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" }, "r858": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r859": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r860": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r861": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r862": { "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" }, "r863": { "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" }, "r864": { "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" }, "r865": { "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" }, "r866": { "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" }, "r867": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r868": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r869": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "340", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479483/340-40-50-3" }, "r870": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r871": { "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" }, "r872": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r873": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r874": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r875": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r876": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r877": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r878": { "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" }, "r879": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r880": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r881": { "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" }, "r882": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479823/420-10-S99-2" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r885": { "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" }, "r886": { "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" }, "r887": { "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" }, "r888": { "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" }, "r889": { "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" }, "r890": { "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" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1B" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A" }, "r922": { "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" }, "r923": { "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" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479424/830-30-S99-1" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-3" }, "r926": { "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" }, "r927": { "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" }, "r928": { "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" }, "r929": { "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" }, "r930": { "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" }, "r931": { "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" }, "r932": { "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" }, "r933": { "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" }, "r934": { "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" }, "r935": { "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/2147482517/912-730-25-1" }, "r936": { "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/2147480832/942-320-50-2" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1" }, "r938": { "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" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3" }, "r942": { "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/2147483575/946-220-S99-3" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1" }, "r944": { "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/2147480032/946-320-S99-1" }, "r945": { "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/2147480032/946-320-S99-2" }, "r946": { "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/2147480032/946-320-S99-3" }, "r947": { "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/2147480032/946-320-S99-6" } } } ZIP 99 0000851205-23-000020-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000851205-23-000020-xbrl.zip M4$L#!!0 ( -@S7U?TX/E1V@< ),L ; 83$P,3(P,C,M,3!Q>&5X M:&EB:70S,3$N:'1M[5K;;MM($GW?K^B5L1D;D&1=(UMV#'@2#^!]V,P& ?*X M:))%J=<4F]/=E*SY^CW535FR)3ERUO$EDSPX(OM6EU.GJDB>CMTD.SL=DTS. M_G;Z]T9#?-!Q.:'J^+N5&CL1.=5JGB9H*E;RKJ23I)MUNGV+92GNM5B>* M>\?=?GK4[]!@T!W0?]HU+,7TL,:Z>4;O:A.5-\;$YP][G>:@7[B3F4K<>-AN MM?Y1\U//3E.=.YQGL#[\#-NL;>;HVC5DID;YT*M4"TL7P['.M!GNM?R_$QYI MI'*BLOGPEW.C9/9+WW_QZ?/E;Y?OSS]??OS7KMH\H>RUL\NZ^*0C,D[\LRF^J"PCY^HBQ@V5 MSH4;2_=FKW]T\BV>^&]I>9,G5:?]9J_]MG6R_O=2C.64A*&IHAF"V(V5%7^4 MT@ LV1SW"PT;Z%S\ILU$M%N-?PN=(JI'.5WC/U-4WH4UCE^--3K;K/&KM+ ! MM)W,Q56N9QDE(ZH'HU2F2#19D6O0'HZ1*AH( =CK,6YN04TS62C/G*1-Y13AW94^+>PF$P9&9)U2 :#J! MFE,L2T0T7S7#JW)W]\'N)I&J' 9EWRP-6(>O,1W#9F5FMW>.!L02Q1O7>4:980*S+@X4&3U:> MW;9,<^!U_D 65@%X?.[X.K+KG-9B6=K=EW!^B0@HK4X*&4N7!AN FJ;*>L+# M+,K]/EQL+:ERE6X-9=+#ODI92^C6*RKF007:A"Q69RKQC8HM(ZL2)8UB!51( MK#X!Y+Q3:3G9>:*P/C-Z>M26(!!:%+^H0(&DXC*3S.I0RPNQ3)I8$5+P:N6 M7Q'Q1! OUE-R/]&^$N1&+Q*Y.S/F&H!WY]J=<0SL3U7"\)16YY*3BK2 -E=L MC%EID@5^@&@E(Y4I-^=LONE8CB8/-8^B$ BWIJY4?#YW75<*%26J=8L Y.HC M1EN6> %\[3>B'$5%!C!CA J.$IZ"NC8 %M&D"J2/'P*R\3-#]FVSVV.=+Z8R M*STCL3\I35$"JBD\83>4H5@(=K2AAHQTZ;9+L$L.D#>S MB0OD].O]@X@6I;P(6=I M'<>E86^OI,0-NTZT=;C/CZ2PEXVQ4?7(0>QO69("MN"I.[,KP=$"D6^YN1O/ MRQNY#H)48VEOZ@=F. ]S2CSU>WM4M#Q'8WU%6=5_WYE?_[]-]'5H;ZVD-SR= M?(("?$>H]Q^]!?./I)(%<.M+LF#N6@7/DC?8_0](^FL%XXUT$D6CT\;>Y%E_ M UM.)LHYHGN8.=+(Y#R>*,CG-]D'Q$"$EHD6_W/INH@+^J-4$-_'0)G'OJ$_ M^-EI_54ZK?,,E1KLHH!][K6Y:X\5 :E5 K_I>&8DKS@CA\K-YV1?<_HGBHMG M00_"?]6'G_ A57Q98U 2VG$S08?U)7IDJ MYVQ\:O;#I/R7T@J=([.G!KQ5AZ/)LRV@XA_Y5IBJA\2H\JG.IL39,9>CZLFU MJ0B:)D6FYX31V5@'2I:W$ N$/4KIT-SE66/?.]/YYJD:C0 X,@W8-Y.%I>'B MQPDR1Y')^5#EWEY^T4FU5Z2=TQ/>[F3*&0C51 4B#YXP7+TC/#YN#EH#?DWH MD'U=LCBX>H/8]&\0#UVR/M9K#M[VMXZVFNVM8_?MV@7R>[UOVO;^(X^/CQ]? MV&:[WWET65O-?K?[Z++VN\U6!RECG;2 MZ4Z%]6I]\^O\.X'LITN^U25O]GI(RO[O^H<-M]3;D>%:K&5M)Y,\8.J/@X._ ME-)5*>9?"A>0C5^UB(50SZCFCL'Q,R!^!L2S9H-GP/SOAJSB3MGWY^_'BE)Q M<4UQR2\ Q,?P2.[EQ,&S3WVYGMS_/;R>0T^]YL"#=0\>^GYX0[=]YSO90EO_ M[=$PO&6?TMJ7LTOV]SUU:[E$1D@!I=N^9-N'J5L_PZW^AH^"#_W'R/\#4$L# M!!0 ( -@S7U?>U@-KZ0< +8L ; 83$P,3(P,C,M,3!Q>&5X:&EB M:70S,3(N:'1M[5I;<]NV$GX_OP)'GJ;VC"2+NMB2['C&S67&+TW:DSE]/ ,2 M2Q$U2+ *%G]]=T%*$NR)$?N<6([31X9RY7%^<9<''QK_-_ MMUKLK4ZJ' K'$@/<@6"5E<6$_2; 7K-6JY[U1I=S(R>98]U.M\=^T^9:3GD8 M=](IN%CL:H+A^<97!]^AFTV-G-PXUIX6LD"%H)'71+UW4TF8^E8+VIW MU^5<59>;"6KL=(FK<-L5B1,T,9@O)')_B\CA< &)-MQ)78RK0H"A68V+-^]^ M_73U_NK-Y:>K#S_OH\W)NC*_5];)=/X5M6E<7#791UXI]K;-/FDQR7C>9 D8 MDH.YC+M7!X/AV=_QS%,H$[TZB$XZ9YM_KUC&I\ ,3"7,,*A=)BW[H^(&P:/F M>+_4QC%=L/?:Y"SJM'YA.L4HGQ1P@_^9LO8V6F/T8JS1W66-G[A%&Z"V^9Q= M%WJF0$R@&8Q2FT)HL*S02(-X#)<%X\6<584S%:#P2(R>(]%&G.5X1<*RE"=X MRS"=8T ['>9M3"@@ 6NYF=.4G%\#GKNRI\5[ H7!(Y4G6#R#)B32(*'BM *7 M,Q]T;);))&.VHC_+]3,P4&]""N32*F1>(O&9=!DJ:$M(O("T;XFB:8%J3G&9 M8/%\U0PORMV]![L;6"H+-"CY9FG )OH:I^.P61F718JAX8, ?R>J$K@G.FG% M6DUTL*1P*M'&! ^"C5)+_]>FMW>.1H@)21LW:4:E< (Z7:-G_''6RY-PF[%4 MZ9E=(,+ 1%IG.![$Z6:0&Z5LKCC6+H39D/9%^;:_R[>?U@SQZF#8C4[/;.V] MFL<)^CI-)5X>VB-OI2OA_H'UEK(#LQ@!!$"MI,UI!TW*,?(I^NA;2)DK; M"M<1)QBM@F-*HQ,0>-NR0_2# '1L,/:[FR3CQ038)8;;KY7"&5&/MZ+!(00I MHH$(5^%24BHO B!H?T8QN8*3X#>29>^#TK6#4CR(]+R+'IQ!Z>'^5/>E$'"R M%P""MW<*5W)!#-=2D+KQ( HEX:;$X99$\BSGSL^C^PFI;6$5W;_)91?8D"4UB>%C*4K@QL@-4VE]82' MLZ#P^U"QM:3*5;HUH+B'?9VREM!MUE1,@Q)I$V6Q6DGA&Q=;Q58*R8TD!61( MK#X!%+1392G9>:*P/C-Z>M064"!L6?RB$@LDF52*$ZNC6EZ(9=+$%2$%KU8. M^"L&FHC$B^M!W$^T+P2Y\;-$[MZ,N0'@_;EV;QPC]J=2$#RYU06GI,(M0ILJ M-L(L-V*!'T2TY+%4TLTIFV\[EJ+)0\VC* 3"VM25BL_GKIM:H;+":MUB %+U MD6";)KP OO:;0(%%A4(PXPB4%"4T!>O: %B,)EEB^O@F()L\,61/VKT^Z?QN MRE7E&8G\"6F*):"A'MH+M 6Q( M65HG267(VRLI<Y8DB)LD:?NS*X%QQ8(?,M- MW7A1W.KW]JAI>8Z-]36HNO^^,[_Y?YOH\]#>64EO M>5KY%0KP/:$^>/06S#^2$@O@-I=D0=RU"IXE;Y#['Y#T-PK&6^DX%HU.&WN; M9_T-W#+/I7, ]S!SK#&3T[B0*)_?Y! AAD1HB6CQ?RI=%W$!?U02Q?^V.H^K+ 8DU@JSS'#NM/ M\,K4.6?K4[-O)N4_EU;H$C-[:I"WFNAH\&R+4/&/?&M,-4-BE,54JRE0=BSX MI'YR;6J"AKQ4>@XX.LMTH&2^AEA$V*.4#NU]GC4.O#.=;Y[JT1@!!Z:%]E6\ MM#!>_#C#S%$J/A_+PMO++SJK]XJUHE1Z_OR5/F !5:,A-*+FOY3@\?7*'#!XR@U MW$NG.Q76B_7-3_,O!++O+OF[+GEUT,>D[/_>_:QA3;D]^:U#.C;V,L@#IGX[ M*/A'*5T78OZ5<(FRT8L6MA#J"=7<,S2^A\/W<'C"3/ $B/\/%!+[O/_*!-A' M U:*^INE][X["RW[FTS"X@[U:Q_"4[KG$QY//O7Y.OCP8WACAV[;<.#1I@>/ M?8N\I0&_\REMJ:W_'&D<7KQ/8>/CVF5*\&UV9[F$QY@7*K=[R:YO5W=^J5O_ M#=\-'_OOE?\"4$L#!!0 ( -@S7U>U@?SY#@4 ),= ; 83$P,3(P M,C,M,3!Q>&5X:&EB:70S,C$N:'1M[5EM;]LV$/Z^7W%SL#0M;$4O=OS: *[C MH!F&.HL==/LT4"(5L:5%E:*3>+]^1TK*F^/"+;(V:1,$MJ7C'9_G>.21QT&B MYV)_D#!"]W\9_-IHP(&,%G.6:H@4(YI16.0\/8/WE.4?H=$H6XUDME3\+-'@ MNWX [Z7ZR,])(==<"[9?V1GL%L^#7=O)()1TN3^@_!PX?5WC 6NVHY9/6Z'; M:7:#@'A=2J.HO>?%'>:S[C]>#56Q>:&3ZZ5@KVMSGC829OKO-7VGW%'/29HW;Z". M+Q,><@V![WBO;@.]R9>H,Z2L989J:/<&Y A]S-3_A+EY+^;1^&1V='@T&LZ. M)N_@^/1D>CI\-X/99"W^[XO7Z\"I,W5&#GA!RZT_4I3#*0P/)L>S\<$3<.ET M/+*#WW7W8'((L[=CF Y/W@S?C:>-R5]_C/^&X6AF)+[K^E\3UA\6N>;Q\IN2 MFB4,%BEE*D<$N/+)..814_B-ZQV^N<0OE4E%-)"T3,&.B$:C(4;JEZ[G\.G!5$XFF() MBF%?&K"K0ZGFX+F-/R&6RFI=M\J0JZ3 $#>%2:1ER-3VEK?G]KUZL3C?!'IB M;58XZT!RB#DB@@NN$VMYRJ*%XMJ )BF%\664D/3,XISS/#?,\=^TI)@>+%,9 MUR%>" 03(1EA5*_,*?9IP14SF2 WCD3SQGLEPF"'O 2DY+5V:(&&9&@@(J%@ M==/\#J(K-,-(&['7#9J%VMPZH&XQ7_F6I^BO>3%<$0X_X698>0&_< 7$A%LW M*I8;C'4C)D( JC$34L@@SQ T2HQ6S%.21N8]&J3-!"A(%G.>M6//N5Y)LBR MQU/;HU7JE[9"J;6<&W/]B$N$W>WZW1:@MU'6\M;+/60T\9Z^[]U5F/]]ETUO?Z5>#=;QFZ\&MMGS' M;6T&=M<.6C%P&!HY1OOK6E"K%#)"*6XB>WYV"=[M=5ZP>#4Z9/:MUGV[73S MJ;Z]U>I<3XZ2[].C4B8 ",K%_^$9%;/V84AU-N)T9^%ZLF/S9OF#!-GV5A-W M*O833DRX:?C=@?=<"*;U+7H;K@NN85G;R"5?T/3'">@-2)<)VFZE,Z0A!:=0 MX?^.'MDPI)[#Z'&$T>./E&/<:7-J"E1FVSU*.(OQ6(!'!,W/&4R*(]MS]#Q' MS[VL=XX5Q^-;AN>WE:!YN1HUN_8\\[@.;&L+F\^R9]E/*7LJE0J_4GS08WJW MZ72;[9_@F/[J"Y+5(Z4P,T7@LBH<%77)/#'5QE1J"!E0QN:,5L5:6YDM:[6V M\ILM5"9S=D\AM;-QL13-2&RH+GB.'URN)713<:Q42XKEJH=>KK+N467L- M67X6EZ*[]C+V/U!+ P04 " #8,U]7CQZ04BP% !X'0 &P &$Q,#$R M,#(S+3$P<7AE>&AI8FET,S(R+FAT;>U9;6_;-A#^OE]Q<[ T+6Q%DN7$;PW@ M.@X:8(BSV%VW3P,E4A9;250I*HGWZW>DI.;%<> 6:9MT"0+;TO&.SW-W?#L. M(Y7$!\.($7KPR_#75@L.15 D+%402$84HU#D/%W >\KRC]!J5:W&(EM*OH@4 MN+;;AO="?N3GI)0KKF)V4-L9[I;/PUW3R= 7='DPI/P<.'W=X$[0"9Q@;Z]- MO<#SNF[7]L*>[7HV(QWJ.>X_3@-5L7FIDZMES%XW$IZV(J;[[WNNM=_)U."" M4Q7U'=O^K6&:'@Q#D2KL3Z)^^;,TLV),L4O5(C%?I'U#J5&JUN) Q$+VMVSS M-]"25D@2'B_[+T:2D_A%,R=IWLJ9Y&$ISOF_#)$@*/-X40+=1^V8IZP&[K@: MZN0RXCY7T'8M]]5-H-?Y$KE RDIDJ(9VKT$.T,=,?B/,WIV8QY.S^?'1\7@T M/YZ>P.F[L]F[TO0?3(YB_GPH;+Z]U75=>S 624;2 MI7ER!B\A8I+Y2T!E),%9#DI Q'/XF(J+F-$% Q41!=K"-55G?Y##IX)(C&:\ M!,FP+P78U9&0"3AVZP\(A31:5ZTRY"HH,,1-81HHX3.YO>7LV0.G64[.UX&> M&9LUSB:0'$*.B.""J\A8GK&@D%QIT"2E,+D,(I(N#,Z$Y[EFCO^Z)<7EP3 5 M81/"(D8P 9*)M>IGB7(M2/1O/9>A;"]0UX"4G(Z.[1$0S(T$! _ M9DW=_!:BSVA&@=)BI]?V2K7$.*!I,'_V+4_17TD9K@##3[@.*R_AEZZ D'#C M1LERC;&IQ22. =683BEDD&<(&B5:*^0I20/]'@U2;DSK/K%5$9<4!8;$])G7 M#*H86RL#X6&RV]THNTN7;S(6<3G%<:=T$&JI+R2.BQ8BC$F6LW[]8T!YGL5D MV>>IZ=$H#2I;OE!*)-K@V [T45PMWKV=U.VV]=BMM5[S-[G\RU',]]<+">Y>ROEWZM MU4[;7A3L5\PBDI8CBT8"[H(B+)#7(;S@JVYMC8R"%?T/3G2><-2%?+L]E(9TA# MQ)Q"C?\'>F3#A'I.HL>01(\_3V8LY7A:^!-/97"*.VY.=:$*-]E'9E?.S$Y\ M''%6O]'[]&EYBGM.JN>DNI/USJGDF"D9ILI*TKQF@A05E#Y=:2HZ.MB:E!5O_&5 MK\O3(9-,[[IXBBU(NM2E9'U7:&KHMX%>X6N#6)'>1O)I)S*1@7ZD0'X]/A5JOLN[F9>U=8_59WGSNFAO7_P!02P,$ M% @ V#-?5PK>5AVM. $ #S$4 !$ !C9VYX+3(P,C,Q,# Q+FAT;>R] M:7>C2)HP^OW]%5QUW1GG.4AFDP!GEMZCM)U9GLFTW):SN_I^Z1.&D$47 A4@ MIUV__D8$H VT(+9 BCXSE;;9(IY]B^?Y]'_?IC;W"CW?']0JX!QL$8]>;MMOD MJ6MW]NY9+Y. DP1)CN^*+GI7QEB7QP(4VF.@@;8BFMVV+LI&6Y%5L:>.9:B( M8_[ERGCNR5W-5-J")HS;BJ*+;:VK&.V>"@U!A'I7$ S>O#* (8Y56>\9IJ+( MHO9LF-*SHBNBINF&*G?Q9R6 M8UL.Q$"\##S@^!A&($! 1F\1NVAC;7GQGGG@K;WC[=FSR>(D0= OT=7%!WU7 MD41UZ\WR973'8C?NW F\]\4#Y.9XB='%]>W//0\ZQK8GHJMKCZ!]_K%C1?CR M,_!A?#LTS/27HPMK[[7>MKU5E%? &]_^YEMK]_^4XS6(E[]__S8R)G *VI;C M!\ Q%JO!;[5VP7/C?A-:Z:M'%]96_Y8 2[0@4=?U2W)U=0WFQFNC!?0NPXO1 MK=O?A\E\A2S3=[2+)B6A+4AM45K0I-]^ 6"69)CHPG*S5S9P7GYM0:?]8]1" M# >!V?\TA0'@\*-M^.?<>OVU=>TZ 1(D[:?W&0*F$?[V:RN ;\$E6?QE___\ MG__S*; "&_8Q$[9C;OMT&?[QTV7XZF?7?.]_,JU7S@_>;?AKR[3\F0W>KQS7 M@6@!UML5OA%ZX8^6:4*'_(BNWR-IYEE&^/VWX!&.?VT9;<2(#ICB-T'K*A9Y M#^A&U[QUS!LD^%I<"*M?6PBX5R;Z2WN*7C'!C[5-\-Y^A\!K0Z?%68BZQVU) M:?6'1N ^0X\3>2(+/UVN+2'#BFX=!(#W:[0F#]AWC@G?_A>^+[[4;?4%]#^M M*TI"]_B/7!/6#KY8O@'L?Z'=+'8>?:?7ZK<1?2"Q=?Q'8M@NO_(%_<5??$-M M]?.!:OT#(0K7/Z&U^G_/\8$!>KM)OF"#EW6J&%MOT$2*S?:70--;??*';!_L M"?$G(V:[&DV !S\C*6I>N],9='S"M@,/\6](OWH!EC2$]=N"V,8B?_/:8IGF\E916+DUOA+_'G_D\MPZWR.B^^C&ZR0Y2A3:02@2DRB$@E0A(I2)X ML$LA& X51;G L$I92-,0=;2 !;)RT1Y6;R7:!@2N=R01)I['?[R!CCNUG+37 M'BHOUEYQN;[ZO3S0HP#Y*P)8BNW<8P3P^LY4NG8F%K\L MXBGX@LW-\%<3?>QM9EN&%7R'4^PVFA:Z&D;E%M9L@,0*?N86^=3((T0F+7)Y MG< ?O%E(T\>WH;\CYW04N,8?X;L^7:9^8@&-Q4JRVBE8410"0L\![EL?F, 7[KO43;A&\9\ M.K=Q;_T.6'&X:+HS7)7@E];U%^ZKL*P.I#5=/^Y^L*P.K#4>(^[]O!438AKNJM>E9=2X#$OI?%>>@U>2I'P M;[IG7JF74B3@&^^>U^RE%(F+IKOJE2;1*SFVOH&@QKOT=271ZT!6TWW^ZI/H M-6"IVWC'OW8OI2;$41L$^ (L[Q_ GL//[XL??T-O!)XQ>?\&7Z&]CL'%37?. M;![XY YQ#\Z.6)^E$@ -*6^O4MMX*$( MRI 891Q/&=1&-JI#1J7$*C>&,JB-OYRI-CE\298#',/"+5O]P"-M23>=0F_F M>LC,^.PZY@A_'KD@L#$GY[K41J;.5)LQRHPID]K0716JBU$FQ91);2"3+FV^ MCPQ^C)X\0H?O!], A6Q!#UE2&[ZEA1+.R8Z@ARRI#50WGBP;:$100Y8]:B/S MS5+B ]^'P6=@_ $/M^087>Z@2WH3#[20 E/C== EO6F/QM,ET^,YZ+()29<& MZ/&1^PH]:+TX-_ Y8)J\",JD-^E##S$P75X'9=*;]#D!RF3:/ =ETIOT.?&D M1H_>I :-D"_P]&ZON7'[8SPK>BB^N8'IZN%>Y#0U>B.O)20$J"%WM;F!Q5$./(?[:O""?2AL,39'@C?/;:\4U$52 M=7/]T.]S![UA!NQFT79SW<\* 5XDA5/K=7X&-@(X'$T@#+ZY!L G>MQ@5VA9I#YM3ZG-1!O4!:UZCU.+=#G6C.+- N3J U/)*I4>OH4HGM1L?P M-&J]:RIQW>3XE4:M8T\EJH]+E-*#;6K#"GNP?>\Z3&L?@W!J@QNT(KS1PIS: M^ JMV&ZVF49M=(=6=#==?5,;73IYR%,78?*]8-EM["MT7SPPFU@&B$KI#'?N M!-[[U>AK:< 5>FU9. ZX<\<*(>O_.0X6D)V&-7;]>>!=X0OQP_'?X]_QTXDW MV>@F^&\C;KB6>"D1/!LW'?*!=3K0J8MYY:>#@YG\P7,16H/W!R3<@X%CXAYW M,_S9S^]/[S.XFIO2-+3)T9]SX,$OKAL\>'!J^:6S>PZ*W$ S=<&N,T?S9H?U MWL$=UM=H(D_O0IW:H%@&A$GJ,0@[;66T@69J V)GBF8:6)_:L-F9TD0Y1KY. M7;!L'W Q8D?N/)@\NYX[?YE\![X/C,D<.=4EYY$+[&"O4Q>UH@SL:Q*0 /XP M";B!HUP2D+I0$V4X6B^Q.'[VZ,*?=>9X+0DW-GH'^O$(YY7F\)$5P&_6*S3O M' 2M%^O9AF%L\//[=_ ?U[NV$?[60THW^%@@4G_F$S0FCFN[+^^/ULND.65+ M.G5!I:/P$:5C_<"=XD[V2-T#(_"1,?((;1+Y]2?6K#%($07J0CRYN(34EVW> MWAQD4!>(::#(*K#F3Q2HC8(T3685BA5J@Q8-D5F%(H/::$%V%KFQ_,"SGN>8 M)4))M56$[>6F5*RBFYX\8,(I\/YHD%JB+E(0H_@W:+Y8SLL-]*T7)Z7<_-YU MS.@:-,N/T]*21/GMFS%!K +1 MKS^!5P*NBN*-A11/7J?Q[^E=UA%07JP@YTHG*3[=2V(%?. M=M1%%W"(**PSBMOZ&-%O2W+,DRBM6=:6I=NHBTJ<#QZ+-$-%ZN(8._!X^^/Q ME/!8C#Z%\V3\-]:G"X!ETJ&4\Z&)0GF;NBC,#CR.OMZ<$AZ+X6W_Q=S* MVPN 9>-MZF) YT,3A?(V=>&C'7B\OC\I^ZL8WC:<[7[P F#9>)NZ>-/YT$2A MO$U=:&H''K__?G]*>"R&MZ=OSE;>7@ L&V]3%^,Z'YHHE+>;%/_Z[<>74\)C M,;P]F8^W\O8"8-EXNTFQM!.CB2)Y6VI2+.WKYX=3PF,QO/WR/-O*VPN 9>)M MJ4FQM!.CB4)YNTFQM.O!2<5-"O*WP?98V@)@V7B[2;&T$Z.)0GF;NEA:&?#. M13R_;3?ZJ.#MR7:;?+'V;+Q-72SM?&BB4-ZF+I9&GRPMLBY$HBY.11^\"Z5O MZN))E,";AF(WB;K #HW(D0ARE$.0LW%H,A=R9.JB-90BY]#J[$*10V789,=) M8GQY,$5;-$ %C6WJ$&8RE1$0.E!2EPBC,@!!!TIJ.E8B4Q=+H D2ZESY M U!R.\<]>TY4DU#GD]."D+KT"'5..RT(J4N+4.?5TX*0NG0(=9[\@1W5KK=7 M8C54>RC4^>WUHZ(FO:$TS4NOABOJT!A*T[SS:KBB#EVA-,TK#SM_^A:X?3/L MN6DY+]<3RP&GZ7PH37/0Z\%.71JE:;YZ;;Q3BY)IFN->&^_4HG>H].(?/->< M&\'0&T'OU3)6FTTCQ#DF\,SH%A_@V6GDIA--H2A4NO548J@N_4.EGT\EAFK2 M05TJW7\J,523'NI2&178@:'!##]("BU&,VB@CQAQF\*1:Y.NAB>JD+I41@WH M1E5-FJE+952!;E35I:*H##'0C:JZ=!5U\8;%S!X;./=@NHJF:_?%@6_QK&ET M-Z;;4> :?PQGI$K0,>\< W_Z%>+'2RX:%[HK&BM7$7.7NKA"1BR("/22(*@[ MD%'Z5,/BL$%='(%JGMC4.-T#C8-"-0YU@06J45;2V9HM M_O/M=&:[[Q"N +\QP.Y1%P?80?)?H0,]8*_ ^0#"/LBJ>\0=HYH"RQ0@7+P=L(HIRY 08-(I0(SU,4C]F#F$>(A)48 38*;'XX5^(^C M'TP(9\0[=<$->O!^TI*8VDC)%KP_0&_L>E. 7(G1!'BGF@_K41L[*90?\SD> M19ZX[U$;'JD;X%2P [61D+JQ4Y8?WK2@1VWL4$>"5Z4V2D(5=FK*Z:K4!C1H MPTX=N4&U:;&'"BS>DFPJM6G!A&I!7:2^5IOFOU?MQ]6E"YA_3:<%U33_N@9^ MJ40[+YMT>^X\V::;)%W(I?CY#-T^56I]^CO'<*=P<<3EFVND- 2[=OU@./[J MNJ;_Y ; /E%.I-:UIQ%)=:DQ:L,!-"*IIB"91FU4@$8DU>1^:M0&!PY"TB/T M(?",R0#! +Y"VYWA>V_?9NAM)]K72J,V8$ ]QFK25AJU<0?J,5:7ZJ(V?$$] MQNK28]0&-G9B+#R["6W;!471J@Q;'HTHJ.8V.&*6@DYLZM0$(JJ!/ M!:-0&WF@%U4U66LZM2$'JE!54KV*3GGXX F\#>;!Q/70TM9C/5]<#UHOSG78 MZ#;O>9/M7UT>/%Q&F5ZA,X?7[G1J^?AQZ/EW'K2!4\&@M5I8E/*0!8U$0IR\ M5>?-=89C] CYZ82;F.J41TO2L1:WR_[? B:T%TJ33:4"RD,PV[%S@Z[Z@66< M-GJH#;@,T!M,"S?%>H4C:,P1@BSHA_V%H?G%-\[!G:ANIC;N=9HXKD4O4QM=.T$9Q%E 1J@U:GBN5:=/)YQ[[.X[RW))YWY.M43REO8IG:N-#9LHFO7+8%653C1DFB-HIQ F@NGKNN$?8\8 0K[-4<4J,VE'("I$81 MFJD-S# =5C/%T> 2M2&ITZ )AJJ\*B@2VI#>2= ETVE"6JCB$R5TF.\%1F MD*@-CYX FANJ'5;&^VYON,3HVO3U4NW;1"R1>U@VV9Y:S[;AMI0=\%T40A^Y,-M MS^P9[$OK[NU_PG]AZ#-,H ACE59[QFFHLBB]FR8 MTK.B*Z*FZ88J=_^-0WS+9_S@W4;H0ZJI/8'6RR2X4J2.VIT%'W]:9C"Y$@7A M_VV16_N?_!EP^I^>O4OT@O#G\#W)MP'O!;TP<&=7"GH3WD(;V-:+ MX:6^0B] &[>CCY#OA9>C7>AJ1Y(DO)$ 02PPXP]'>^R0/5X&9LHUK:,+VR\+ M'7'[H^RUA;WVDN#-BV^(2%6>!2WR'"(83)"_ML1N:X.H(C)!MW*F.\=$]S>! M_._C#)@FLAZN!$XD[UE^Z)(06@IAIU$R_G!\':W#]:[B#XP1][;'8&K9[U?_ M/? L8/\W[P/';R,ST1J'EWWK+W@EH@6$O_X,-Z:BIPG%1QM%\A.!XL?]W=/M M#3=Z&CS=CM99D)HUCFZO?SS>/=W=CKC!_0UW^_OU;X/[K[?<]?#[][O1Z&YX M3^G"_SD8_79W__5I>,]S-YWK#H=4EJ+'BRUC'4KJ.O[K;V)/^%@UD"3I("!] M&3Y^YSXAY>.XSOU\BEYB<)&.>H1CTE6BQ3D &P0FM*YN7&,^C?1SBZBG,;JA MCS3@WXD*6[ZE7R"@$WLY"M K.DR4B'PH8&G:02N[^ Z\/[BA S\><.68[0C'8_*_A;:0 M9F]87ZP:-1[&70)H[BPCS7 _',MP3!F!\X M=\P%$\@M#V5PMV_&!#@OD!L8 ;XLZK*"(4SN^W/QD=#VYY!+ $UN: 0N\DVB MU_,<=AW0-S8,[^T6"Y,(3"+DD0A/'OH<"7QD$@ER)!*4RD1"9=)@"9$RQ4&P M_$HD#\:>.^7^O?@?_MCRMS6H;I,$V_SV\LU*O=,]R*Y<=M'DOEA(:B&BP9&? MP\GVEH1J\+/AHS$]*C@");9E1<(QL76*Y"KW1-2#@)%UUX_PA727= + M>1=!=?CU_O9WY'H]/FSN??@X>-KEBZW;EQ1$<&1)[DB1J9NN8)8^_.9%61+C M9[?ID8T 0"+2((J)4(.\&6D@KL(LX'S7MLQ$E"%%J(6@W-Q[N.V"^.\@R79Q M^P:0*,)TA>61MZ G#OBI)^E'VRZYK4D97B(VIXL?)A"]IC]5!%M@DYF=&H">4D;OJYR-B0 MSKQ1>\]K9&(E[1L?WS'SW%?\'NC$"7;^=4+Q V0B-' M[:2I5/($WNZB#%68YETW*%1D4"AM215E54U8%$F1N,.M6"H- 5M)#50;A(>P MI>LBR]7C_H,,7-^TB!V,] @Q.*U5GB.W>B_ L?XBOW\X*UXY 83?=1X[HPX7 M=6#T"(;7F86[=SMY+8/ZW!51*,5 'YBFAXL)PG^^H?>)L3C16OVA [E_6,3W MN?&L5UB_FU(J%*[1CT/OR?VYT*AZJW^/B,?X8W/G?&8',/H&$4Q#[P$I;R2 M#M?MN%_,3N5^[((>7/1%^_^S9J&I$7U-1+I$5'O"YE=PRT"=4JQ?' X!C.F! M!\':GJ56ORLD%.>'#(#%Y5?VP\1U-EQ]W-2BUQ7:,MKVX3Q$G:.K],+ZBV,< M7:4GQ,\>[>@JC71T#POA743LR"-?%G=:0LOE_K)F'(ZQ\AQP3"Z -IQAVN(< M0ERK=P)$R]&MR$N>>>B*-0,V!]^@0?HPH3\C/0C]+ HP@EH;&S-7HMQ9$*'E M8,6*-?-A*K&&%U62#%T)G(:!">A!,RWTRHG2Q?,BWCHP@JM#F?ZP'5><3U$Z MJMP[)F AJQVD58HOUM$[2@EY&D7H2-W#PBLT1RP.3"%8@4U";!!9&)QA(U.# M=B?[X-P($9&C]^FS:U_X.3T[6K9U'T5$";I@G+9!HN;GQ$)_6=W47HFQ+TPQI0PJ8-@13H"\]P,>-PKL.>0^Z4C"!+.;G$^[DI8; "M M>2",>"=DG07\ MTB"'RZI@P'W[=KT_<+<[8A$9!I(2F]N'QBR*?; 2 ^S.,7%P!W+/[YPQ@0B. M4UR>]G,"2=0/&ULK&:,+\4,8$9L GQM;-K+5@&VC.W#&')MP?\XM;, AN^T9 M1C>@%^=-GYOD(!"Y=>9! Q)M)$H<$D#!Q.1#Z"Y<2"N[?4;TAVYZ_@_:"WZ(W(^>Q$N)7H8K*_Q% MKG\&_(#3!NYY2!F&]7G8J Y ,/<71J':ZO\+'I.QI[L&=#-R MOXTJHE+M@\GB='@A,T>L,K7[YC-]Q]QGYCXS]YFYS\Q]9G9S$17R"^L &P>1-[UPGS7F/C/3_,RV?@IB M@+G/9T"HS'W.ZSXCCQ5P-O+@( <, [G/'L ^,/8H/9SN3?TKAS1A._6"/T5^ M-_J*%P>C$3*F:.?O/,YNH]=!I#]?\-\1V_T,)O'E#C>"D*S-A&/+(6?!?>Q3 M_]??-$E"V]RR0G)9_!C?MO>&[>N+;\09[M:65;;P<5 2$A"EY[84Y^G7DO,7 MUP3FK@,_'%R+28%#KDB=KG!D0ELJRULLSPV5RHHA-.[%I453=+TD;S&+&YK# MJSM4]=/OX>!PIW>-A.*+Z[VG%)*1FXBX-**;5FK*]%;_6[KP93Y1TVWD\AV= M-;E(0WDJDE1G.BM]'+3 M;7JPX4R,AJRL%4/K*P'6=1R8V<=B8B86VP;P.-R"'H>[R8[=N7YGAEBKU#DN MU%K$'[U "N-4XK?2(%3\@$=5Q2KS3WPR@JVE_84C>E MM:;KD6_9[_CC/RWT:?19SH$_<8C6@Z^63TQ:!S@&9G1DZ.*.8?AF/&['!)[I M<[B-B&5N.Y,N7X /:<'11852":!.=.X@H.:.^6(1LHU\?=.(WA$&[FT]V41S MXL"?0-N.*9>[0/1(PO=AW\3=@?(/:X>_5O_;I+XEK(ZMD!>S.C96Q\;JV$ZO MCFUJF:8-3Z& I?J=D*JS4ES ](X(1^VPO@@+MCS2O+\=DSND(OKTGPZ34%#@ MQN1#4PK^ #DC%5]H0(!Z[CQ[D?N+_1*KB"RG: M=AUN[EBAHB"=E?S6AO*06L@I-:PIL/U?6W?W7U(.4).>3:1=SHB\8C@/2*@# M07,]LNC,IVW3#=K1"Q'H$7V@=PD+'2.W^J(J\:(B\8(NQ7HF7FL_[/Y$]KG> M*2KJ#[7H%[7H%,7'SO.*[^TNUW?0H2\QW0"@H9,*&U+:\-=2,J1T8X[OS V# MGE<>Q$[^YO;WA!0K9@5%#\5LVMA)13QL&ERF MM\J=GBH7WQ.UTQ/+'N)2=CW*?HHG[/DP>'P*:>Z.[OJ: _?SY>Y^<']]-_C& M(?-J^/A]?9F-$TDS*ER$P_;MG\[ M8.Z]T.K+GR[!I@K(HKEK*>8HELF+':1ZE-0C\"??%=G^NN]#--@+QGALN%9D1V# > MZS&9V!A\R>).F4A*S":N;4+/QTW'1/4C=_OGW K>F>-,_1:8S&P&LC /JDQF M-@=?*BYH#Z"/SQ&O"<^TI"A+?-*'/9U5F3#^WI$:7RLSD5B928UX^ X<\$(D MZ7_[W(WE&W/?QPS-'SF0RA9B6 M]OB-3"J?.8W(JU)99E*Y1CS\';?1L0)R6H6(6?0'._X=2VG;]>?X[-C@V9T' M\5SW1\O_@XE>"M$IL[)KQO*[:*2W*GH5)GIKQ ,R;P,/09F(W0?/-:"))2V3 MJQ3BBLG5E3->I;%T^D&OXLDD[3OYR41?.V-W5R8?,U3L1<7PZ;?;Q_6C@4?@ M(XV=&*^?O4H0I>J.KS%4[$7%-_@"[-"$(@.OF0U%(Y;D/37%3*XR,NFNR=4! M$ZSUX@+'^;@OP AHV(N*'T[84@]ZN$83V&%; MOJ@4G*6'H?F:BKTK7+I&N]J!B2X7AW3C@F +V%R54*L<3D*F/F?<=[ MUTXH]9A_&;OOIBBYU1\A.(& ^:64 MHD?>>9!P]USWE,DR>\:S;XRV*668S[XEYD2-O@\S9/+,9L^0H\8(X;;CY/#\/'=&S1LM#[T?#;W0W"W_)@^L=,3CWOM[FM=N829@FRQ)2Y64AH^.ZV0\Y%XVC;_T(UQ/RPY_/G=+>OD5,-^X42"X7S0U3(/ 'F+=.]LZGR-/ M"XRB5H-T?K#<<<_[B 8.T$)P[5O"(@\]S MWVPAXG3PFLD?C#:B4!,:UA38_J\M_)L#IA#?V7X!8'85X?Z+YTY)SQ;TQG]: MP>1Z[B.V@][MFV'/,3 &O@_1_YE/X*W%A949O[:LM^#*F4_;IDO"X?@CB!\0 M:"#A#!QW&[=Q=DO455Y2Q$^7ZPM?Q,^JH_5T^9Z1A[F,E+'+'-CWR4V)VSRN M3$=$D[ER2_(I UR"J]Y'[M^@$^J>VE>XF+S4K9 M-IO*X4U44WL<+ R^X?BKZYK^P#%'T'NU#.B/7-O,2O=*J]]5>*770&643NRE M*J-#,Q?-)-O2/9#BR+:+R%;E94W.*ZT9$5$G^_:8Z,414:_5%U6%[VD"$WYG M3[>E&['%T:W:ZDNBPLMBCR+I=[J9C*^>Z_M<6(EVE*$:[?3@'!8E'%&Z%4L M^^"Y8RO(R@(:$MV*Q*NJTCS1G94<:HZPG#*)EV[QYB!Q'9%X5^(E62\H(L$( MKGZ"*]TZ/I[@%*'55WH]7M0;& M@)$X-B9=N2.<@<;'5[R*9*J=4#5!*<*<; M GZ$/@2>,>$1LE^A[<[PI$N>M/&$#C*U(7JM\\+!MQET?'S>E(6(L]7@A.!% MON;-$KZW(32S\@UN1B_Q718H88&2*NI4"J1<,N*/U[M)/Y'14=,EX-Y:C@+I M2$'>F*#PJM! XYB1+G4B<&_!0X&DV\6DBV2@GCN0P,+%!Y#!"-KHCR\\]P(= MZ $[-&F!.;4PS6X'HDA_1:?0UY MA4V4[?15Y#6 ^CA&ZZ3N/"@X:*UO'_@QIX[Y<:6 M![F+>S> G*AN/Q7<3$=PRV'?7 :OCU:-?HHYQ'AQWJXP9+\"RR$5\" B"_< MV03Z&1FB*R"&X-5N,HR;0 P+)C1'MFXQ. NE''RRC]?TW.8E(Q_Z1%#"OBQ3 M!$FM?I>7F BBB89*,^\*I1P9'R[F)9VF5$Y%85U-4EX3,0R4J_=N"Z0U%7<34M$_GU1?7M8 M7>S1E/'%]="O#F?,/0\ZQCOW@GPG[L)&:&7AT\SATYA)(JA>1T!]\M "P]=C MUQ3SS&>(> 9F;QW2U5I]C>^E5->PB 9E0C<3924,V^HI"Q\!X[64JFM&64V6 M6?OBK>535D]H]75>%QEE4419!@QV"<#0;[IW'3?VI+(2O82)/BT[VI1 04-C 132;>D1U2+I M5L8&II*_CPRC(NJDWY[X:)%4A,]&27RWP7%21KCTB+\]TU:H6&B>-JTKB^1N6,T= B,I.7"?*%83W/8$WZ-^^ M!1Y <+075%X0DE4JU&L!5I!% M#<=4$*&EAF-$9#3IO*QTFU+7Q>BW?M.<(OJ5<&A9X/640S],Y#.6H2@J30W+ MR&$MK]++?4Z.U?(6Y*CD=4WH]<4K\CX0PT0^]V?HP.R-GU4%U^@*6C+13;T6 M8>$CZG3!0>9_;I+%(\YXN9?;IL)O7.CV8H, MX-PTJ[;ZLIC:'N3D>SS4@/][N*UXN%P'L/+MIXOLS#.W#]]UTS74'JL<$<[1 MATU5+=1+*56GU.NEAH5T3HR+TU%XLEQ8R,,/-H,>%]T*S M#=#2P M$VYU.D8##@X7"']OPS[GUBN20@\3#!'CP:DW&%)1A#56=3J6N^PQ\ MR\@3'J1#D>>UQ],VUC23^P%Z(TS#.X-2TJ;*O@6>@[;LQT\3@EAH9V&AG:56 M7^B(#3RJ3U]2I'GLE==.IH^]LIO"V]A+*82]9,Q>$DWYF[,E=J9+MA.[6 BQ M*YC8NRS!?I;LQ73)=O;J%L)>7^7O2TE<+0+,C=6/9<^1KLHJ 4PJ8UN6$ M1<24PMN]IKIA+-%!G\PZ6;ZMR[O;SK*2YIZ#6G-=76%Z?K9+:59YP7O^?V1/Y/N?. S] M=^"ML:Q^\\]B9;1&0RK(>$ C)K1!2&?W\^DS](9CHMW\X9*@HLAKIOHV'9>I MJA(O]AIHO]*7^&@X-6>TT=*I><]!A5*I620-^K62Z5F.924/86FZI[SS<@>Q [)2,,.-XPB9JG12([ MG>"9K.RBA.PB=T^B=]T>LFEF\[IF\$*-)G91O-#%O*#PLI2<"\@HL[F46:.! M7A1E]B*CYC22<8P7FBVECS/OB^(%%?-"EY?DY+P@6BF39;C8*ANWRM/M*'8- M_ EG6J^6"1W3)X=7HQ07D7='RH\P4W>4'FAX:=6!.V^4%7AH_"I/< K)2J#9U46PEJ,FS5, OO,&IH1LE5DWBZV+*K1O!T M287'Q?$TJ<02\K='9AQ& XWL)B\\J - NL5?OQIF<$D%O K#T:B4%@^ I[1(N;!]D=*@JQ^$&#E=1"L M_AL-))@-<:S*>L\P%446M6?#E)X571$U33=4N?MOL=>*'YHL@O$S\ +; MSQX$?[3!&.WJ"M@_P;O?NES;_-1RVAO S@JG-*ZJC7P3=CV!\O7PZ_WM[]SU M\/%A^#AXNAO>U\YGVQ9Z/QI^N[L9/-W><*,G],_WV_NG$3?\@A;__>'Q]K?; M^]'=/VZYNWOT^VWMNT@GZHL[!XD =X[>8?H?$HND2*I.@?>". "G#Z)VJ]C, M60H38EZA%=I@YL.K^(>/IN7/;/!^93GDB^2AC]&[(@F$.6G#K")("2\OF:PC MA(P6)22B+T>7.^32AC487E.Z'4W2MUY&5N;6:[M>*XJ=GGC<:W=?Z\K;/\H6 M2^-B)>6@U^Y)I]%_+"S=]5IL13]D*Z&0+7,SF^9$>@#K:>)!V$:N:3#QN5O' MW%&WFD31UCQLHT!PC_^R%0('4NL!*>D&@&)H!.XS]#B1YR1!DHL@A948VUKL M8>\)ZGKAD\[Y,7PD A^I6/A0M7]&'T73Q_FHO2Q]$JK%HG80E5_,'3 WK0": M'XI5AJ<*F(H*I&KM[)\UTGY4?J?4'1:4M,V6OJEA1Y0,3A0%J?&3$X_+!BUP M7F7"E3Y^*RB?2A&_43WB4!3D@F<<,NIGVJ90;5/B,$)14)H_C9 Q'%,WA:J; M$L<&BD*WZ+F!19!_04W&**3D83 )CZ?,/#B!CF^]PGCHVH6-\/>!YQP8%A. MMZL#'/=2CQFQ=U3TCCT$'R=>$7?N*0%E=Z[?R0#+ -NL.QE@RP5L?,MQ\X8/ M;3; WG%:[SA=BW3P"BP;5W*UD>?0]I%_@ S25^@'I%:5F:#G\HZJTU\KY8C1 M*]KX?ER#)84RN=H$V=SQ(%KB7]#D7H#EI+AC^)]?"LS+$%_P>M45#/WX'XN5 M_.;:&#!?T7JPU9@01_MVD>7;M"OSLL#VK9K/H&W- ^_U^JK0K(% M%NG__Q[3%_JH.%4 MG8Z51FB[)7UGDW"BV.IW>5E,9LX2!6",#ILC72LV*8ZF/JG55WBERX0O(_H" MA&]=EN71Y"^W^I+(BQHETI=%D>L)SV>;?R614 >%0<%':-C ]ZTQ6@;A5>0( M8[=X$2*YP#&2#QR.D7!NZ#Z1T"&Z#^P,*.)3\RZ'.-##T\95UKTJA[VZKK^8>,\Z(C3IAFG"B:""V'A.FC+Y+*A&E M@;YQ"D;(W=6_0&H[[1-^Q@0X+Y CO:*0A8ZL[-V6>$&CO7:? :6$PVI+,:"I(H=?&/CG,IDIP\])HYFL<(N7Y"KBT+4Q/Y2@(F7T%CXI]Q3:/3 M.'7QCTBR.6D,1)_\+Z2NO0D5JNP=S:_ZK4Y.?7$]]*L3I9J,=R[PT-OL,)T% M%M+CR KW)IQ98.\HY0P'Y:G;0^G^+!*NF8R5(C*N$?2O(^ _8=B'GQXXYM,2 M$TGS);.-(B$;A>^E!%@/-U%8))\^D[F(O&B%5"BW^BHO=_,8RHP*Z9.%121, M*Z1"!<<[-"GE< >CP@;+PB+2FA52(>ZE(_.*E*<&E*4[CTYWCLNT?!L:PZ/ M+#Z> 8N,Z/7R6\LL-$T-65-@9]-!UFI^\YN1-35D38'A3@=9:_GM>4;6U) U M!9X '62M%^ @G&M:\: -UYUC8XNL;Y&GZ^YF:AJ;Q[NE4'=0X,#B*%()VD 6 M<(VNI"0[\;!^#4TV58I(X)1!;B(B-XGO:@48U8S>*!)O1:1J#J*W)$E)K;ZJ M%% CS>B)(OE51-*E#/F%!^,H?#>EE2&-'38:W!'VR0V G6IN9LUBK0_#E!&D M37>.)XW'2\\7R6C<.*#BP4*C]BKP6%V*>#DV.ROCT4(JWU,;.%FH<+JIN;+A MW.1&WJE&IR8W2A_!5Z3S+$Q+CXK+F;:O^)3E45R<0\WHQ!YJ9ML M[\/4/Q,<3/W7#H\"1R(6*3AP%QNIRZ>-4&@J&Y/0Q26)QO2C9O8KTSBFP'NQ M'/)Y=9UQ#(APX$5$T?_T[%TN9.>NMX@2>\WIOX8]QAZK_+'2-9-$ J(3R $# M!T2!\XZ$+^>X ?0YX*$_.[BA+7SQ@,W-@!X:I*+*H/1NF]*SHBJAI MNJ'*W7_C@Y#10Y-%N=(,O,#VLP?!'VTP1KNZ O9/\.ZW+M=%'Y)[&\#."J&8'R]?#K_>WOW/7P\6'X.'BZ&][7SF?;%GH_&GZ[NQD\W=YPGP?? M!O?7M]SHM]O;IU'M*TXGX(L[W/O:G:-WF/Z'Q"*+68ITT%(VC-$=6CXJXQ3]\C%N@6P[Y(GGH8_2N2-I@KMDP-PE2PLM+ANH((5-% M.;/HR]'E#KFT84*'UWI21]%[6R\+'7'KM5VO%7L=39..>NWN:UUY^T=S++:K M'[;8/7G)#+5Y.S*5(:N5Z31N*I#T8-/0"-QGZ'$BSTF")!_0RJ.I^T_WF6^@ M :<8 '(( 6D- @>20@TADL-VE^Y?IT6@,GC,-)+QQ=P!<]-"EF*BE"$?"1\+ M&&KQ7U&1+P)8E?@?C$:K-@Y-37,H:KQ3&]+2J?,ZFF$"?!^>\J#D@E@NC,3K M]*$1^!,R^M3 /\ _Y]8KL-..B>>N!JQ:J.;-5Z;MJ]+$P6$;RI(WD/;D#1 ) M#!P3_W.[)(1!< T\#P=^_@'L.E?8.HQCTG5H/K1E-3EQI3ZFJ-0R6HD&1<^W\WR/8;^!SL-([..XJ' TT&<3?OD:?CE:7E;X4?)I+ M$GA-WC99O4 .J6 [N .R)/-=)5DNB^>EXV@+V18..O!K4](1+FW;_0D< ^*/ M##"0N0)'CBRHO*LFJ$MIMP@([E)UEH[S*[:FR:9D42&N\ MFE):>?*SONBRK :&@;84^$@?&Q 9S@CGE6KC595VX\Z?@_'E6IA&;(BYBY#IB]\06MJX(?S;-DV-)$,?X7./''\N=EV M9^F".P;?DOZ/-3&[I%5.6NL2VH4V3,-KL-6N6R.H;<.S)1,A.ZA(UJF==ZR59 M,MG9E0W3#[G(E09&]$2KZ2$ M&)@171+N'SPX Y;)P;<9='#,"8=&W+"CY5H%%;.N,TGL"*ZW(5@'CDGZ<0T( M*(^U6)16OZ?Q,DM*,#N[;#E>!OEV$?FJO*+GENZ46MRR2IUTCWK%Y1?DS6AM M7WWP.Q=#]%I]3>GQNM[8RD-J6IJB\T*L@05W-CO167U%[O*@D ^N5%OF54$>W M"I7$QGM"H4JZ^/6)K-2O,A/KF^N\/$%O>K>45UD9J2#O*KR8OYJ /E>9,@_YP7-G: %(8\YLX 0\$=;XF.$,HXY,[F&YJHR1 MSQ"B#QB> \>\C8%Y1$J@IR 7&0GN7JE=P5GJJ@%T6T'(LT"Z[2*W5^=5\6Q/ MLU5& 4.$-!#@MF\V!#YDV:IC9/8"B-\P#!_Q1X;C'SXDL9_,Q-]K]7L]7DUQ MQ&D7VLS:;IC0+I9P5>0GJGQ/*VJ6 #.[MY' 5]8$=K&"&=-DR^6@BU3&12GPOY>06LYJ++L4-@/-BX1ZCH<%\?*2#6N.C M=&G\Q4+/PF_6*S27\ S3I4?XC*K0ZNN\KC6O2I=9S0V3T 43;CBZ6,D?[&!F M\]Z&LF/H>=",Y\L'X(V=I>0)OQQ.^U.HK@LP+HMPXFEEQ?GP-E8K/3/!BEQ5^,*.Z[%!T M(?2*#TGP/25I4#3>E*;[C$2ZB"ZW5KRA':YVQ WN;[C1;X/'V]^&WVYN M'T?_]3=-$M6/W.W??]P]_8L-R6E4>"+N]6Y;X-FRR?D8-BFGH=V5%MUE9^ = MGV]B W)H&\U162_6AY "CCRSJ^)B(9D7NBRKP0;B-)_K*FLDFY/K4E.GDT\C5P-Q0*;E3_E%=J+,I+CZ1_WE=5Y66!'"ECQ4S5"NP"BQ3UF M-61I%-6.BEG9AQ>M1G,:PG'.JV^RNLI1]EI%^7,.&^8*"^8<-567^.5[@EVSJ&[ M9(U@+DL#IF3^=5(?@/,_(2.IVEJ*B+T9.-C2NFN MZ75_^_N%N\S0+]?0/_[0D"ZT^CT!V4S-:[C&C/V&2??BB5=L]661E_3..(NO2[C64N9EUBR3Q=PK;R&1DW9EW*]-Y_5> M[CX2],7;*1/=CQ ]]QH.','"\ON@***FRDUKJIH; Q,^WW2'&8++,! MR\P6K[RB,3.UXF[U,B\4%B1GUO?N+FXLXIVKE=NJL[G%/!E;;]!L_P4]-XW> M-2P5-4F4/C9./#,+NV'B^5"*/4!,ZZ1?C)#[E!!]]C3=]2RLCJ7L.I:,K" ) M0JO?%41>%AI[SI,5L-1.X546L&2F0*N%CH%8@+NX=P/(B<*'(AM#9=-';[YUY5CVKZT ^N\0?/_;*+O1Z@ M1XACIPTL)2<%1]\8X4\\ &_HC0(00/,?P)[#Y3LC\T!83!Q/807\XK;NB4??]C?N9N[^R^[]T,6 M[R\_EV9U]7: -7T-4N%K4/'9P[3<[R8LPP5QEL,AM203A8M^D'@._74&T4VO MT'[_F!6HQVSHSO?G>#.'AN D0:L$T,-YX <(+DB(9%FU\G:J/?D,)W6&-?8L72>75;U/K86?R&K%BD<:U?LLDR-70VSJU)Y8 MM1K5*[M)6K/9@IQB\>9VD:O#91&"P M%&N/I1DUF).WMZ;,!A:UR\P PY#35 M#UA=FB5\P,)P/E25>#%U%/TF?C#$\W!"N4"6@];+Z\6QR/(;?;02^@6', MIW,;QV-NX-@RK*Q5N9+4:_6[LM+(LS[,W&Z8%"^!?%5$OI+&BRKK8UZ=6;Y$ M&^>2$T&&.YUY< (=WWJ%G.WZ/L\Y,.#<,3[!>0[&^D4N*>^C1:.?4L[&Q8 F MYS"N5\$K=57!5Y0DI.V$C6.S)2N50AG(J^$%*Z) MO/16OZ?SDIZT+&HAKR)M:VH/^_A;2SSSF-H-.QE1NAU./,X(RK<$NEF90Q9P M_$31-+Z;TO"M(98W-8> "C3+&T;JI=OL!9"Z2$A=UGA9+ZJ9.7U];!M^,I0D M.U>5QW]O41L'GM,*H7DE(Q"8[OS9A@OLY&.PILW>+AXJIZU95\X<#ARS .$C MD5/GFLYK>C)$0+N>+9QZ:G;-SDQXY!TA?F+"H\H#R\4(#YD(CZ[&BTHRR=E4 M7B:FS66 1[3'54PKM;4K[S(@@KT7T4+_T[-WV5\O?CK@L9PD) K[:$@BYLP$ MXLYQ[A1]\1VWYG?< -LT'IZQR%EH/2\>*2+PPICD!/H0DQ8!+HECCBT'.(:% M/6AYF3 +:[4>VV\E^\1,PGB,X,<:S*>L\P%446M6?#E)X571$U M33=4N?MO'&>,'IHLSM?/P ML/WL0_-$&8[2K*V#_!.]^ZW)M\U/+B1>D8$AG M!5(:U=9&NPGCB8#X>OCU_O9W[GKX^#!\'#S=#>]K9[)M"[T?#;_=W0R>;F^X MT1/ZY_OM_=.(&W[AK@>CW[@OWX;_'-6^]G0ZOKAS$->[<_0.T_^P=9%3X+T@ MBL.RM[MN.BS63.3FDIV)K$9KM\',AU?Q#Q]-RY_9X/W*KV.IDE;+PL=<>NU7:\5E4Y7 MD8]Z[>YK77G[1W,MMGO0:_>6JG9LUCL1#]D)R&1U^]/WN._3-%M$Y^[ M=4QHKFWK0$P=T$F@ : 8&H'[##U.Y$E-^@%M&K)T4EBS1?=:F_7"9TM'R@@^ M$H&/= RA-)^EL[@,-!+YQ=P!<]-"=OB'+ AL:!>6:^!/N+'M_O2YL>=.5P:* M8.>W[F+N4_&@GQ@ M]M(I%2*0)$W[&6#DXO@]='Q ! -\PS\GK*AF%W>6;H$0< YG^#4/-G!N0R!F M%HZ]5E\1^:[8O,HT^BR19E-LZ5J\((I5"<4J8NYC()1J+: M'6-MC31S\,YS,X3(@"EC1_I* M%M^YZ%0G="JJ)SABD5:A??$58!\*']'C$.9QGMKU@5V2_*;6K"G@$-\> 8[A MC ,30^>&P)A4^PS' ]^'@2^F<(,BM/K)3F#L(-X)BL8-8N]2*[5,*5">'V;OH;1P^V9 /SSLYN+":QA ),U?D7WK>N^< M,0'>"YLW?J T-UZ1T",S-3D,9RJI#L24&[-&<&>$.D M>4F$V\727$TQ0YA=7E:QE>NT2:+8FLX0K+%I_M.S MAVQV.?(X=QH(DSRF/+ M@_'\/G7[_+Y&&CWERG<$8EROB-W3+YX[O08!\ //G4TV&63G! NEU]RY*\Q( M;Y)8/YA>#Q#H.*?8Y34I=X-09I\?&VDQ+=] NPE\SO6XF0>GUGQ* M?8:(]* MB9BYOD><;V__Y4'\MG6O]B8&.;*-'B*(WRVAG9F+<#*2EY7FY2*9/4^]X*^7 MLO567^;U_-E+9O ?WC\:??8O9--?O*RE,7V$FC PGT\K4<5:<5ELFH$0(J M#G*N,$B"![I"J]^3V*069M17GRP]B#YQIC0EEDBM 1\W#D"+A;LIK*H[3VW! M37>1KB? ><%9"\0OT83W^.@$>#N/Y$61=3IW#K(5@0]O8/COG7,3@34\7/2$ M@9K5-.SBKG,*W].34^=800]=.BH3+>U)#Y=#2S*A)36E?2%KHUVF>%TY9T;2 M^R1KO-(RE9TY.X2\%*TC=:G#\L"(PHH>-*#UBMLS,<695W'&0'UC%[6[?T^@^G.O& G,L,%=N26QF4LTH MOU52#I@R8Y;:$-X)F,=Q+9S%XDGY1?<*,#-3?WB25^\F!3DSB.D2J>7&D?+0 M$$Y3=WE-3+85HS%^= +YA,99ZP\>G '+C'ON1.<\]#E'=&Y]S*5081 MJ..X<-3N!)>A8W ?=XZHAT\.\X*09\XBL[N;KR1*H2VQU5=Z2'M00ERG;WLO M0M,S\,[BTCDJF;:'$Q]"R&;F!8D4_&G)@C]FC)^2G*V,GO#Y7Y'OJBK-X=+09?9LD;(5@W9E!%MF=L G?^74CKS,CCU7^9J7IO"A7!F9K\D24&:^ MEBIB64UBF6*65)(=:W;TB)SMYN()9L>>GIS-150JKMSI*90D*D[?E(VC/'&% M!8G9&E&Z%1$"Z2/'#-SB)&\,\,<0WFD\@+-UW3PEW\QZ;7SU0X),,LI1'1FL M J]IN=L[,JLURQA!'"$_!S.U&EE)P#F,Z^>OP?2>$%.6@BG48I,X<2I^^RCI/*8S -3H:K* MBTKNB4=5T6-!7@1E&F9SFG/8@L8J8#KAH?9\XX9$X K(L^ON5"1 M=9 /X)W [V(?F O]$=*R./X"&P@L2+*4Q"NXO%HF\->UD&W92*/G7 M#&@V(+94F_HA B\>HQP@QKF-(9N94W >N\<+O3SC")F!W7@#NSB"PH->NWQ/ MR',$E?7@9 NFZ)!OLSRP/7FPM*!E'H^L87F NO)@=S'8C\\#:+A"0L0=4IHW M_C(KL33(A6L8 ]25""N" <@L9(GOBD655="7"$LW?2A3,9N)L+'E ,2$HA[HI^QG\]"NX?9"F1\ M61P'BWVQNPC*P_%H CSHD_]^!DAX1G<,/ _W*\8_WCF&/%- M!<+BP,?%@;^XWA*HP_$U >D(0S0S.RBM?E?G>PHEV7$6_ZTT_EL@(75QJ8[& MR]H)=H^B4*A&& P'IV)'VS'/POHN0YSB<9$1"/-P0 \9TCU>$B@9WL)LVDI% M:4%$I"(BDGE-;D:?J!-([C3+EMZ3W$D+Q)W](:=2F@9LB7)_B1&0(\JMM?JZ MQ'?5 OH849-O80>/*NCV4B)-DE8%*J_GFDS7L--'Y-MJ1Z6OA<'M> P-8OLC M-*(+#@??C'"8G0<"R(4_DW'91%F0?C'X!UR!]XIP>R95V*5(_A#XP_%M!/)' M!/&A@QD/___M$L*/T \\RPB@B2\,''/]#RMW9F5'7< Q>T5G7;WHH< *Y3P- M%(A3\2*OI&_F%=:K%1OIF%5>B57+H9Z0*MWS62#D2B1 MM#48Y$\FMOJKSFI*TI"@EZ9/W M;:ZWJ38.!-PS?+$W\!DC0AWGX,=DX<=>B?R8F;WP^7U-Y&6U>=-)F7]$ MFZ91::)LG.[6>KS8.]4.;\U3#A!/LMNF%@Y4W"$\KV0$!-.=/]MPH;SS&79I ML*M>C_Q2(U0:KE8EFH0/KC30NWQ72 H?VM5JX815LV]X9G(EG0;.5J[D-VHT MFN0*;IO1Z_&"D#37F\KFQ"2Z#/"<"_2O:;WV/Z'_Q M?>9>!( :]B$SZGYZ] MRX4L98^QQ](>RRE,1&&?-)&P-'F:0 X8ACM%7WS'H0_'#7!W+0_/ >$LM)X7 M#]C<#'@D(QQ,H ^QD"&\!)!4B*N"T$U^@/Y RM4Z6W<[B1?3P?8_F2V"!,"5 M!VT06*_PXT_+#":QI%MY+F)R8?D(>$9KF ?;'RD)L'NE-(%K;QT"J__%2\0R M$4D50QRKLMXS3$611>W9,*5G15=$3=,-5>[^6Q9;\4,3+U[V#+S ]K,'P1]M M,$:[N@+V3_#NMR[7-C^UG'A!BA0Z6UGAE$:WM5%OPL8F4+X>?KV__9V['CX^ M#!\'3W?#^]K9;-M"[T?#;W)<R? M$4H)IY+AGQ OS3PX@8Z/O"WREV^N?][ >G*#B*%(EX"):R,[U(], =(8Z8R6.G2&N1B/&PYX016WTD!9 #0?8 _!"XO@'L.>P(&E1_:T5]$PH8-<.XBW%7 _267+K> MPJ.A>443>*77&)NPT,Z,4D1;]HG'"##H^ MP&]=:1K]^3W94OHG\,S5J."=$QXQ3F,M!<_$I.AP%SM%6(Q0WD=7F"M#ZKB9 M>VCW(860M JY%O8@]Q=-R-=E]MAZ@V;[+^BY:335Q2D\31*ECXRP3HZP]G1" M.(*PD@340S:TE#2@&?%02#P1IS/<,-PPW)0D= _QL/+*7)4VF5MHCV-:':AS MF1J2-8AWI+>$ ;<$Z1HWC*(W)BD?UT#HR3/F;#)(4XCE6/]G"Z40N9E&*'CH M,R,3RLGD.)N'X88^%M[3X^L %LX69A9QZ8' *RHELWT8(3$F;R!N,C'Y(9Y- MH3PN1CR>IZ,SK?.[:'5R"!;;SQB!V,59I#$X^(9_WE['?T+N/@O%,-PPW-2; MFQB8_YG[ 6D,\^0NS[#BXZMW3G1XE80)GC<3KH^X":-O!7 $O5?+@*$&>H2& M^^*0MQRGC"2DC"1>[M$TII?1(I,3##<,-W2F.J@3X3*%(KSJXZ4KS9:B5[3Q M_5>B2!R2*DDM;6 P=_'++@I$A$ H9BGA)M"J\;K8HRAFR B',74#<5.@39Z/IS4*>7J/81[/ M,T"+A;M)C=W9S#L9 9SYG6><"<0.^]SQ(%KA7]#D7H#E1F$@;B3&_ M^,SO/(N4]2,T;.#[UABM@H@+Y,EBOW;A$U]@I_@#AYUB[!,CB< 13QC=M]L_ M9BEP%O5GN&&X8;AAN&&XH<%_W-+/?IN5CPWZ3?-@>;3JB^=.!\/KNR^N-T*: M?SA>6OZ[S'S<^5Y2*,I_,FHKQY.D@=ADVHCM+-H5(B2A7QT.8<(B'(1(V5]'NOX)J_KPVP/' M?%HJ_J4MMS38LE5/2DJK+_$](3G5GJA4/F124Y7B#&;(4FSC$!@N+(I^985LU\4G44(YU-#I_E M6#Q4FB0UT@S+/2(C;=AC4B"HK;ZL)(-W3!@P8<"$08.$@5[VY%<)'ZOCD37( MZ[UDRS0F+YB\8/*B.?)"$DJ7%WJKWY457I:W'WUBTJ+ITH*)BCT@H5!.9 H< M2N*!D1G/\.$53>.[>O)4"5/S M61(,EP$N\H\CZRO']Z? >[$<\OF-2B0#(FQ[$?7U/SU[EQNGRE?>DO88^>(" M/N$N$6QL,//A5?S#Q_C4AN40B).'/D:+BH"&U[6Q0_*]\/+'GY893#"..D)( MPU$R)?IR=+E#+FU@+;PFZ1VEV]UZ6>B(6Z_M>JW:T43MJ+?NOM:5MW_SV+5J M'5$\[JUUK+6G'X>M.M:J"%)#UBK*'5F5F[)8J:/JZD&OC1*L\0V13)=48@RE MVU+'YE9KUD6+G>B'["04U/7;'&'VD1OM'(:=Q,W6*@QTJ^?^W,P8-P 0RS$G M1-GBR1)MR^&B:2=G#9I'& #T1Y.[!9Z#UKK]9.(Y0&-@&//IW 8!- FED+H: M\M-:<0WY"ZZM.6M@/;E!Q%"DMB'R2$@%I/J1_#WT3M: E*XS1.F$=<9*)"&# M1T(CQL,:EJ(VNHLC3@1@#R JR2*CL0J2%M7?6G43O)J*Z/YG;K]S,BF>D_(< MP&E8)5S&\VWIE7#2GJ!5095P,A[XJ&5>-,<9AC'-&C+.GBU^*$B_)R_T6OV>SFL],?^A/<9= MC+L:H+?V3*8J@*?P>"I>UG1>UW)/M:^*M\ZBH2>90>G[HQP1 M#8)P]//,1A\YAR:=6<-\>_IND]C>9^!#$R?,H..'1\L]#S@O$)\M__R^O.4! MO.,_#7X"SUP-"MXY84?D--;2<"=DBII6L0YIQ0CE?72%N3*DCM6>V22M0JX- M9_@;_NT;] S+WPPLCZTW:+;_@IZ;1E/ZHF\+(ZPF$%8V6SIQWG:7+9V-Q!*D MI AXB%V>J=*,@JK)V+,VK@PW##>E2MY$?+!,P2M2)'C/HI'I(YS-/6."[/A- M1^H<>I=N9X0C_28,N"5(UQAA%+TQ2?12J]]5DK%QUO*M*<1RK">TA5*(R$PC M%!E)1T8FE),)ZQU*+VZRL? A75UVLW"V@+."NW\JO)!2@<"8G"Y"8DQ.+V[R M>3=E\W@WY'&5$GOO+/)%!(OM9XQ [.(L$AHT_N[4,&&J@1VBX M+PYYRW'*"#% MYCH6*@:KELPVBHYL%)&7>LE)%RRO01?1,(:F%S=%YC5R\7-7H(N?SR*'0!"M\"]HY=)&T=JR4ALX(&G//"BSH(P#YZ-)J0>P3>,NLMO"1 M%KZ[,Y+$LH\LZ,IPPW##<,-PPW!3=2))3LPJKLB:0/;3<'R,2:&T^EU>%I,5 M3BS9W& ZK,NH/9H,NU21(?/$S_S.LTB2/T+#!KYOC=$JB$1!OC/VI!=>^ 5V MPS]PV W'7CB2%1SQO=%]NSUREG1G>0:&&X8;AAN&&X:;ZG.GN=U0;.IOF@?+ MPUQ?/''$ M=.?/-EP,&VO8='NUB+%7LEC)=/L>/A^K2KR>,O TQFR%)LXQ 8+BR*?F4%;- M?%)U%".=30Z?(ED\5)HD-=(,RSTB(VW,9%(@X -W2K)#%Q,&3!@P8= @82"5 M/7.V)[7Z>D_@%28MF+1@TJ+9TD(N75K(K7Y7%'A-59FT8-*B?O9@TB)'"#O3 MH,5\4EB@<5\>8;+ M %?ZQP'VE:X!*^\R($*O%Y%;_].S=]E?C\NSQ]ACZX_E9#Q1V,=Y$N:\IPGD M@($'60'G';$#Y[@!]#G@H3\[G(76\^(!FYL!+^PA,8$^Q,**\!((H,F-+0S/7)O((K#^)4Y"O\^-,R@TDL,E<>C+A< M6#X"GM$BYL'V1TJ"[%Z11@"K;N3=5OX[\>(5S, +;#][$/S1!F.TP"M@_P3O M?NMR;1]3RVEOP"WKEM-HL#9*3.A' K#KX=?[V]^YZ^'CP_!Q\'0WO*^=9;8M M]'XT_'9W,WBZO>%&3^B?[[?W3R-N^(4;_39XO/UM^.WF]G%$ZH'4C]SMWW_< M/?VK]KVD4^G%'3ZXYL[1.TS_P]9%3H'W@H@0*]*-TMK%FHD27#(K4;QH[3:8 M^? J_N%C?)K0EGHB%NO[7JMVM$T^:BW[K[6E7N%KU7KB*K6F+6J/;4Q M:U54J2%K%>6.HFV_3-EBI8ZF'_;:J/)GP]R0!.*>IWOWQQ;]U.P=+7:B'[*3 M4$[7[P6'93$<\6"W[BB)FZWE@>A6S_VY6-_3IK MT#S" * _FMPM\!RTUNT'YL\!&@/#F$_G-O:U"*60@D_RTUK5)_D++OH\:V ] MN4'$4*3H+HJ11:8X^7L8+UL#TAGJC)78=H88&8T8#XLKB]KH+HXX$8 ]@*A6 MF,R(+$A:5']K#=U@:ROQOH$&G"YJO&4Q+/+.W]2T877;&0]C;ZG;[E93M]T+ MZ[9[LICWG'569-5\VLR\Z29Q6%KEP1[V.JS&6<4USLEN=XQQ M&..<+./T2L_Y:ZV^KNJ\V$M6^#'.8IQULIREELY9>JO?E31>S-]4AW$6XZSF M'%*7$X5JI=69JD*KW]-Y24\JK\Q'S!EW,>ZB7V^5;A"J(BX"562-E_7DT!Q* M%==9])XF YI]?TYB@.X8;91D37V,0<^DEGC?+MF7E*0GN? M@0]-G$2#CA_V0?$\X+R0$L;/[\M;'L [_M/@)_#,U9C@G1.V]4]C+0EIJYY& M48M%ULZS&&=B'V%AM@S)8W7R \FUD&O#&?Z&?_L&/01SN:>,4'F_:9_=0[]M[<'^8YTIS#@EB!=8Y91],:,C('K)WBQ6T"T MCZ* WGG1TK'NTQ9"(E(WC5345I^2OJ.,3%A[[ ;B)EMCXD-LIMTLG%$5:*U^ M5^=[>4\KH<\KB2;D32Y@3C=/A#!8OL9(Q![0(LT M" ??\,_;SP:<4+" !7(8;AANZDU\+,=/^$_N\EPL/A)[YT0'8DD4X7DS8?L( M_YQ;OA7 $?1>+0.&&N@1&NZ+0]YRE#+2A%9?$?FNR/*WC:!%)B<8;AAN:DV4 M4"?"10I%> U'5C>.T+;Q_5>B2!R2*DDM*J'"N1:T*LN$CNES%[_LHD!$"(1B M=E+BKN.;-_&'XC== W^"*7)!+\*27J167^A(8M+]Y&;06^2'\%OR#%1J6,B MA7,8;AAN&&Y."3>%YCH6*@:KELPVBMSJRSU>$O)T3F=$PQCZO'%39%XC'S\K M=/'S6>0PR$D9,O"692M8-(7AAN&&X:99N"G2'D?:8#G]/+/^QC-1!(D7!'9 MIA&4P[B:7MP4:)3G8^H>C4R]QS2/IR2@Q<+=M,;N;.:=C #._,XSS@5BEWWN M>!"M\"]H"]-&@K[M(W&._/M7&"67>3I?Y9T9+%6AAN&&X8;AAN&F]KB3U*U)@0RE8;C8^P( MK=57>*6;N_J-D2!M)%BQ$7LT!>KT42!SNL_\SK/(B#]"PP:^;XW1*H@T06XR M=IH7#O<%]K@_<-CCQ@XW$A@<<;/1?;N=;Y9A9SD%AAN&&X8;AAN&&QJ\SRW= M]KWS0/EB>WOGCN=#"\OOOB>B.D^8?CI6.P] (2AKZ.^_)+N=N',VJC MC=H2CB8-Q";21FQGT2P1(0G]ZG (0QYTC'*ATB2ID:;2]XB,M%F4 M28& 9YTHR> =$P9,&#!AT"!A<,@,CUR#:74R_ 59@[S>2W9D8_*"R0LF+YHC M+Z1#YE[FDQQ4Z!H&M_5D\%ZIN:S)!@N USD'T?65WH# M3('W8CGD\QN52 9$V/8BZNM_>O8N-\ZDK[PE[3'RQ05\PETBV-A@YL.K^(>/ M\:D-RR$0)P]]C!85 0VO:V.'Y'OAY8\_+3.88!QUA)"&HV1*].7H$W2.TJWN_6RT!&W7MOU6K6CB=I1;]U]K2MO_^:Q:]4ZHGC<6^M8:T\_#EMU MK%41I(:L590[LBHW9;%21]75@UX;)5CC&R*9+JG$&$JWI8[-K=:LBQ8[T0_9 M22BHZ[M=?O)Q'. QL PYM.Y#0)H$DHA=37DI[7B&O(77%MSUL!Z M^B=K $I76>(T@GKC)5(0@:/A$:,AS4L16UT%T>< M", >0%22129O%20MJK^UA@Y[M572W4 #3A>E=')82R?F[QG7L/*XC(?>TLOC M%+F*\CBT5%P>U^65E&9_QU7B4Y,AVE,@72[1T:%=#P\D9]YTDS@L[8S"'O8Z MI)1,$<167^XRQF&,LIQH\PG^1AW,>ZB7V^II:NM+BFY MD05>T).%?//[\M;'L [_M/@)_#,U9C@G1,V44YC MK5ZK+W5[%'6R8FW3BG$F#I'*(7FL]MDFN19R;3C#W_!OWZ!G6/YF8'ELO4&S M_1?TW#2B4A?-7!AAG1QA'7(&]WC".L :($,%)(FF07J,MEC75X8;AIN:9/(A M@<-21;).GT@^BXZHCW V]XP),OXWO:]S:(*Z/01XI+.% ;<$Z1JSC*(W9F,, M44#N%:\)R?/ K+5<4VCI6.=J"R$1J9M&*F*KGY2?C$SH(A/6HY1>W&1CX4.Z MQ^QFX8RJ0,*%=AHOI^1>&9?314F,R^G%328N/\0Q*I3)Y9C)*;'XSB(+1=#8 M?L88Q#[0(DW"P3?\\_:S R<4+F"A'(8;AIMZ4Q_++N#^D[L\-XN/S-XYT8%9 M$D=XWDSH/L(_YY9O!7 $O5?+@*$*>H2&^^*0MQRGC7 IDL@KHDY17([1(I,3 M##<,-W2F2J@3X5T*17@-1UHWCMBV\?U7HD@_ M[*) 1 B$8G92XJ[CG3?QA^(W70-_@BER02_"DEYZK;[0$?5D))F;06^1(<)O MR3/7HF$Q Q;/8;AAN&&X.27<%)KM6*@8K%HRVRAJJR_+O);2]9HE-N@B&L;0 M].*FR,1&/G[6Z.+GL\AAD),T9.X@RU:P: K##<,-PTVS<%.D/8ZTP7((;6;] MC3O4]P1>$I-#[ACE_/_LO7MSVDJ:./Q5NOC-[B95,@?=I62+*H[M9+UOCIV- MG9G9O[9DT1C- 8F1A!W/IW^?IUL"@<1%($""GIJ3!-"E^^GG?JTAY@BJKN_9 M5*B4[T742J>.1+U!-4_'*,!BZ7I<$U/M' H+">76\$%B$W#0[5>>"AL\0N_\B("Y3^H.W*BR!O *AA+ >L9;>F9'?X! M#?&/! UQM,.!61!F?<-UZVUR$7@7H09Q-N)LQ-F(LQ%GP_7=U^"\!$D_\-@;A3,+8"\DJ^UNG)G[Z[C MMJAVUU1#:];LAV M$5T4X9#@HT_@A$+JN^\D#N%A(VY>.+,SO826BL*K*\Y&G(TX&W$VXFSJ%R"H MPD!(A/UU(NN?4-3S=_?\_M-<\,]UN9WC P9H$1$^MT9L5E83H3QA@.SIYFE4,U5+E]8GXF=XJV3%9I2G+PF:? MBF2KG1QII2=[1"5G%Q=!=>AS8F_6B>GDV'Z,8C+9?D1E]5!I$M0]5;4OW805\0VEU+064C'SSX.U=?X* M!0&?.P&7H=]MQE_O1[4X0TA2+5M2%.%8W"_.\%N,V?ZI@SW3.R#S+)?"\88) MNG7_\SG\K;OHEQ>WB=L6;]N3\.3.)LI3D/*>AI0X+@ZTLRJ6]-ARC(S-R94WIG?XCS#(J;QZEL.!-F-+(T! MUEJ*NV7^Q"4B'P:VXLH#4[4-MZ^! 68]NWWE6;,UV;)LUU3U_U/-5GK3,$R7 M/7%>Z-5S2)T_KYP![.J3,WISWJ/6;PN;'WO^U1*PR\*I"'%/AKXYHW)R0BM>Z?W#T^TC>7J M=X_/GR[N^D]W=Z0+W?W MO?OKN]XW\O@$7_QQ>__T2#[\O._]O+F#WS_F-[,=XFB=5@$$QD[X FB!\M!8 MU!@Q < ;O&_'L;9]S/$ 2^1/)-&O[J=C>(Z[I%#).14*ELM2JOVX!^QOZL=8 MJ@M,S?5H] 0W_CX"'6NN+VE<1?/\*>WWXN0[?"P%W6J"V!5.::O[.!T#=-Z1 M56;>0.:O(.D[4J4K6>\2M.&WY'4\07BV#'AE+WO]RAX[]0@M%R+XI8+O1D A!"E8K$ ?F?*4@>&H[> MR0\Z"<*8E5M^ 5V7S/XG=Z[^1THDTUQZ ?CZ.)>QSU[4#_ G=H380#50KY>2'G'01A,/#_9'GX<.S[(T73.SG7P MXM-?\%<( .4D]P&O:B6 ;WUD&+:H*BT<["SAIOB(LY@WS_:/)/80+V* Q2)C MM.)&$F #U@G@EPL79S[,$ :P#,N0:8I&;@ F"Q+8( S&;-$#0&WRX1X0B\@F M; 2O*U@DWKM0:1(1'Q GBI"AP5LF0"EXV<#QD!Z+T'+^U%1+*TI2XOBG\H4P M%D&CZ2AF%WKX%_"09 $I,L?#D-*K,0!QR.[R\93YQPGKKQ EJ%[T(G9'49H4 M7P%G04AS?&918E@GFR*4&=AX4)DDNZ2->O( )QJ2P2AXFZ\W750",]IO"K$\ M98XCX9!9+I1!^,/F,Q2$#<(R^@PU7VE*Q>E2 3V!Z^(H7I>1 M8+($QMN0$2Z!_[H\_/R(Q M=ZXZFD1:71 ^+<[6M]J;OII=VFJ0I !Z]?MF M$\?H;0:=9DC[+PAC[@$" 3+T)A$_ :Z&QO.\]>01X0S:W^Y^?_A!4(_U^<7S MGT($[$PB< &!$BUE O#9=:81 _[272$[OC:/H+;8:9'&1PP-V5M"IPO3O#R&$4PZV9PIT1;T!<&C*%%-1^L*\\ MAPG<,8UAUT.Z9E<) &;F708%$B-K=O;I!L@XZ&>42F8;X5,+=T68:X;I'/ ( M "%]=493IG$P;]?,F"&)'0.LA2^/ 7S%,W\E*C;71G./X&@%E,-0]1UP%.X9 M<2"F@"HZ<7;$3(G%VT.$+UZ+^#8,@^G+D(&(XC%QHB]:'H?X:E*"QU)VHJCW ML#=F:8KOZ \G=(=$YGIM9_;VW$;;<.7,[G'Z 4/$&>M!5OK?#@@G4/@7E'0_ M>"/3B%%P8L.CV@9VAH\,(66_L"_&_3X\/GSY\3'95I_##4B/V;:<_!U H9U M(^*!!>'&:1.EQ*#XCVBUH9RQVS=J=<5Z7K7>L(OQ:-M5>+0UHPJ/MJ6TK8H< MVK5Q$%^6*WN#]%H ES[O[-$B4^!+30W/FAS;*'-K,EX"LD'IA,%4]A=/_KX:1L3B0]J2#:12ER6#P) '#F3B'Y*__$Y M;73I^0PH[*;/R;,2,8VR?2D7A)T6_SD11;;=MG05I5%2?)J\.!%4;2:HEM); M^&^:W;9M:^7/G;:\\K=UCY6UMBDK.SUV_6^ZNMM3SVNQVE:/W5"-O+$&/G]I M0/1"SL6-6X<_ \O ,3WM%WL0^WOF3Z1Q*RN5!Z:+@=Z>33%@>_/,U"J=P6ZWNHHF2Z:*7U#G^/YIS*$H%1&"*)#9/T0:L,D^-T0 M:K/BC?F/JF9+6B??[%%@5>.QRC@^F]+JR*;.W3GS%++(W#MY]D:CAH\E.P0= MF,>G [V.>NM%3H(Y!$)MZ.EP,'%MM+J&+)F:(I#J_)#*/CZ7,NO(I<[=NF:1 MOBO781(3).O]DH!! &$R_ Y/6)K"AQ)M$>,Z)S-.6-#C/00H*MA>UM7QK48%3C<>I@\0=US,IM8Y,2J@L @@"" (( M @@""!78<@V+2-R"5A",/9>U-&%]2=Z M QO5I\YXJ;ZK+6A!I3/^3: M307>@%QY)+) #U8L@4#GAT"[Z<&5<2>[CMQ)*#(I$!8G_"VW9*S!%(#5[?R6 M)W2,5_1D2;H78_/T7+.^9P=G0$PG28_>OH.S&))'3+#%%^M*[*4MO-+.@#CM MA'?[XMW?FT?@T3ER'X;$>YK/9&C'% M!OR\MS4[=GQLV@[R?=L#5Q;:4GO81#*:X%P<7 F^G<+1 BME72GQU9E&DNE, MPDV-*?E: '3] !\3!? M@IP(4[+QG=%[Q$>=O#BLZ;OG.C M"<@[P!MVQ*Q7]SNV^.8+SSX9WH=VLK(Q3US MUB$!MT/NRIC!!%0D8&2@&&#'?)R%\,^I-^$$E@RJ@BV/ #AT=OM+$/3?O-$H MY3G .%\8+TLOX-Q_NT:Y@'!O0Q .(X52,0+&9/$D5^<4[H!"(!_T?X"&/O0$N9.]TAHN_"_#"_ BD/PU3?IN=Y 1D5VZ0$]Q0-'MKJXE,"0I<3(M] MN5-)CWV[U14]]D6/_=KUV-?*]MB_=J(ASOJ"OW#./;!$M%7F-G:^W3H6 "[W MVS?99O"&W+;EG=K>KZV=;G9[BB[]9K?U&=]]4OW6:RZW8(NJL]ZHE.E M;25<@D-OY%KEG4%;]67NCZ],XNQ??O>F:5W?=K81?%VR\0N M-L2^$&7*EN\86+ZCJY)IY5N\I0=Q/*3?+0*R-0*<./9V9N2[;^O;AI%O!>54 M!R!?%Z%0\[,+35PPYJ M+Y!%#6_3A,Y&[,TCJ-[J:O+>#8$ON3KWW!;<^!Q?YAQ&?^2REW*?Y-[]U/DS ME)3%+OY]Y:71ZJJV+NF=?/NTVLO+AAFPYXS]1S'OJL=^$^T_65)-[4SLOZ:: M4U4,14EVNO((ZD@W^TL-HZ(Y!#QE.RY-0ICJ+WORJP[+$*>:X M:B\N1#U:_5A_17,==D5FN=55#,FR]^[?*'HS;$*+LY[#M#];-RL:Z+ K)2A M"9*F-]<*:*BN7T-DWI^MFQ4-D]@5F3$O0)94M4ZCH,Y4;:^BU7E]-9P*^'I% M(S!FI)#'=JW5M3PB'#K.N9^IJQF;5GZD)%KQ]3KSI:FL=8N]4UE*I2:D2.JUAP M'9)RU^@0M4S*Y>29[1$@LJJJRL4]L.)K==#_;$JRUMQPBDBJ:K::<-JT0@L# MZ[(EF?M79HJB)1"F@99 ME(VB@OIDYNY!!6JKJYJ:I.T_8O6\_I @>B=*+>I5>[$$56.^M2K;10,>2B"75CLU7 M57ZQ!T*;#*%UM:H.7B+<=#Y61Q6YQ?75TNJ36YPEWSR%6JVN;32PO8@P*VHG M;ZI*+]Y#WF"QMV3OG]UP/*NB<>)&+%@L>$?+N+;I&#@^R:TH):.)L82#IV1\ M"_R7)QJ.,Z,^RO)V&UL3J(IDVPW45D3$K 98?O"TBRJP7&YU-5V39#GO ZHC MSNUKFV[=1WXQ42297*/"JOO!%.?@I.B1V6[!K_7K-+_OH(@#P.5,91&?1I6? M0/4X#,(8R;;G]ZN@8*75M31=,@J<7K674]5CTXF-\HOC)_M.KC@[?G(PJ7\L M?J("/P&-0-'WSI&I#W4W>1[]4MHE26;[%4V-]J)HRF=PP_:' ,@QC@!WTV'J MS/GMLE&W_[]%1O+ M'N"88C8&;A)Z$4UF1 ^=5YI]!)X&8/MG]HCQ8AWF=E"*8L05-L<] 'K(/AS^ M8U>W26\T2D=#SD>(9^>/LZT53B;&)Z=CY/@OZ2PY\@8G 2OS@['G.\F$<79@ M-X@VX7;#OFM XSZPB!J'?G1$2!7D<4AP?S>:^C]DL=C9C^B^E'.(;,@KN MDNW\F.UF.^'0F0L'#&"K+[?B#2'C"E:L8X=)0^FL6/$N>"X! M!D038"W>*QV]+R%UJ4F]C^Z0]J8SDK)M;:QO83:T]- M74\+\VB3L;+3,2P2'A)E>1*K=#8_ UFDT+F"T[^*'*3#S+C;-:>XP[A;XP3C M;FV[;79,5!3+3KO%\>[: :;=*FU=-79Z[*9IM^HA%JMHNSWV)(M5+;M!B[65 MK1Y[47.$>V,PNE %_L_G\#=0T:/XC$<)%X/@:QA$$=O^3Q^4^=$,&E\=SU\= MR[HX<'R#[]>DOYXK/+XX7B**V326BY@SS?7]3UN<]7XS8[; D-W#<&*1M5[D MV;>J6%]EO'>F6U,]Y&?EXK9*EK@M)NS-E"_4NWYW(J^\DQN;RTWG.4$R@F0.M*,/ M=: 9-.%6T,P6LL9&#[1>4/3P45#,R?'K_"CFD 2SJH2B)$WHG<[J09&U+9UH M?-KY951F5T 5)?L55&R=Z!T9)8:L[&V;B"+I<\.MJM5ZO:/4<5*&P+:J-.(# MH=N21IQ'*Q4;KNRA\0ID:CSKJDQ9U%8-B15-'<[NRG,/;YQU[[L*>$S))A25 MJ]XZFUQJGV%80.#6?KA5O>J]9D"7P+8Z8ELYU?M Z+91]39!]3XO9_-9(M,A M<:DRU=M:-&GKW*?LK,W0DFV?*E<16=.G3F4-$X2+XVQPJW(54>X([VRS ML*V>'8M:US(X]5&I@/ I\:@4_EW!<'0JA]RBUT66]U946R#$/X-^J.;8=$MJI" M8+*Q>G)N;1T@(DWJS./!^HD51;/5-3J29>;S#$3FRH4C5_5!L'.N/#Y+;"NG M11X(W?;3(EF07[?V42(%LC6>M56E1"J=E0.U12*5*'<],5%L&#-S:&52P6P$ M7=)EI48&EC#;:X%RF3BLJ422TO_(5'LF;(=DA< MJTR9U-B4<]NH4P:RR&\1B4/-NO+<7>CG/>^^ O9MGMCLT5D=B;:WU2/\3.>& M6]5;/:+4N&'85L[J.1"Z;:HC4V"/JBU=8'7 M3VEMRI7[QA:V;C>[.$=AJQFCBX,6:MBI=M\9W17#Y$SGZ\8!N";0BV<2I@E#+-C],$K)Q& MHLJMKFQ+II%W/98.2 H2%R1^?B1^0 JO*@JL*F!6Z!U)+FCD(O2#[;T_O[&9 MW=UD(OAO"^/;^6<\;L^?.ARTF9GA"01P C<.^9X$D8?7? HIL&SOE2:SO1.4 MRMR8;+@SO\5YAKU-X]6WY":\5D,/R[-
VR_+BW/3LG\,P7<+$>:%7SR"A M_KQR!K#"3\[HS7F/6K\M#EKW_/3AEM*VX/UEM]QE8W573G(_$*0VW?R?7#S^^/_SH/=T]W).:KO3^X>GVD3P]P%KO'Q^^W=WTGFYOR)>[^][] M]5WO&WE\@B_^N+U_>B0??M[W?M[

\?BQ!AB4;2P5=&!WCCXMD[X0L9F//[I#VI^.Z,-@40M[\._\5QK%8SC! MZ EYR1,\Y?=1X/XYY]4J%QH (=KOQWY[,C939^3-R6,%[GU7.*?#HU/'HOH!!Q3?[5[2JJMKQ-GT$&PZYN:!FSIMO MS$BM@O3/!T0"N01R">2J'>0V(U=%?13J5C^TH5EKF=W5(^Y9O,W2<<\:!2_W MS_8V-M2P+N4C+,4RK[FO-I@N92:D9CC:/$]@\L@*5_M+QS@UL!DZJ@3[JE&I MZY%R#@0!-:+VYK@4E,D(PLM*$Q0;;VH7D%.3.Q$(2JHK)=6'D%(">@B_!?X+ M#4M3#K:!U31)/\?6Z(* ZDI -1)%RQ2TKR@R0;=3)5W)=S$1LNCTB'=^I'0\ M2BJFG]($8K6ZJF:>YS .029U)9,C2IQB.ME7KF#G7D/2ZB)71(GYA5]YI@/J MQ(2&M9S1[-39L:IA/VI#LO:?:2(ZN-1/*A\7]_:4UQH6(TJ:O4\MHD#""^-_ M^WKS-"R>DRQ#$^RO$9A7(_:WT0V61S9L_UQ@Q O^5C,L.QZ25>,ATK16UY E M4[00;0B"'9&-'<2WHK&6M<9>KI7Z#;"IFV4MYM9LZ7RT:FUB&ZVNJDB: M^[-$O7*.[Z/BWKYLVV0FMB'FC]0>">N#@WN;V!::V(:2GZ HV%\=,:]&[&\' M$QN#?DK>FR/X6\VP['A(5HV)K7= BS.ECKYWUW*!8.?&Q@YB8NLR'SR<;_HJ MLA?$E;7+7JC?@L65(GUE"SDAIJ-M& -S0N?:VE%6>G4#?$74X\+1;JVNMAX+ M58&% @M/XUG3L2I:LK6]:Z(%YM7/)#TNZFWVK.D8\I7WL48%EIT9?ZO(LV8( M+M8D_#HB%]O2L99'*;-&O$HX3B[\2H$ %WZE0( +OU(,P=U#"Q%3JC8"H\(I M5:?-E=0M'$BG2%I'%;.L:MV70;"8RV(Q5! MLVC';VS<GER3,465"L^I\IEV?L<@:UDR!7Q*X_YA&L3=X/U:>DX+D^X?C.R]T3/V8 MC .0)4$8@=!XCC.=6'",:TR$NOBPY"DC-JM,(N/YEH G1QZPWH@XHQ&^ MG+XZ\+7G<[&%B_9\=S3%,R1#6&$0(I]ECPX]ZKM4(@"&,'E6G^T37N'X?8(- M80.?L7EX&G4=W%]V68-I/ 6@P0]#,A@%;U&;_.Y$\ .""EY&8#$C+B\D%^1N(K8CZ,SG>FZ?E!@ MS2Q]@8C"WX;/7T0M/+AEVGAS$*E=%/!]XC $>'#CX)DF\P=EB2@=1<4)P#?4 MI>/9#RK_16F3)R 3RAY4!J1J]2#]#C@?].]\%U&;PG+9WV4!;91##:VN^S#+ M[4.OZSZLSL"WH;$X>]7E#Z^1-:/),?B3C^ MZG@^POO!O_-?05*B"(R>\'B>X.[?1X'[YPR/=Y0X9[R@Z9?*!85HP!7#THX^?%@^]Y $P& M<[>$E;GQ4CMW:8';]O"3I+?T53[-66A$;I%95C&DO%DPN)^)C2(0'!%U\I?6 M&6R)["2)/*UVN'V] % <\TH!D.@-YPP @0&E,>!(G:!/L.NO!=K[%F=_J+AJ M/G9T"9'3+79=Q]CHT;QG67N[(,AI8CI4)U^7V[#,BA.:A[UVLJ'/N^]3!0FV.2LR@E7#OW8CK!5MGDR] MU34+"$NTI*L9)RZ%.CGCY2"H8P#JU*1!F,"\@J&.UNHJ:GX-5Q[:$#8Z4W--X.BU1(CFIS1-X;<10S';G6-*J:A57=8S?#SG VQ5NL(:CZQ'M$^*4NL5F=/ MDT30:K-I50C6DUF$I6E5%H+ULHE5"-:3V>"EB57!&.H^'IO:$&M!_?1O"P51 M-:Y5^K&R\(@74&.Q,2\X:\U/%K\/QK25%B==!SZ#*BN5?HSA+U;*Q8I+)S1D M)<-1FWP//:Q6"A8*FN#?$NW &ZD?>*TVVR_T5 M'_>I?,O4N5V/G"CR!A[M__Z._<\0_Z?.Z \GQAV]W\!B5I3"66JS2^$ L!%# M#T0#H&"*Y8V4C).=$T2C**VM3PKEDC.#HTJ=>U> "E<,B;PY4-=5-.]0RJ;S M-@U'K5L#%MWN\$AYV<(U16^K1O6]4:RV8>L'*=JJO@Y*K%6L5:SU,&NUV\J6 M!:S5UXF=I/+%WLKT_?=1_%DF[]0)SZCH9[NMRU<*^5_8^#;I.N>U<^5*O="= MJU?:A>YZMJZI-F"( 5!"H+QK#,4= MJ;?%L4,J3S@V8!J^DV=O-%H=.CNGZMXR!((=_>L34K#E5E>1M(*!\R6)1M21 M-P;33NTTMY565Y?43K[V7.":^-J+(AI?X>II/U-/NI.[IF#'9T,+AE4K=XW5ZJI2Q\HW>]C-QUFC MP(' M!68=G)WC0UJI"*9RMY<62#=&2-=U?X:H]/!3AF2+IB=P+MC^FN,CHQ" MUJXL54W@W3GB74EWS3ISVNA4/JY(X-Q9XERQJV8+EJ:"92T95E5S/P1ZU1^] M#NRM,3H:B$E3ZNA[NY^\@8%-E,H&#H@$@K.%94.&]I:[W(3 M&2P"X:H):^5QRP1&9HBL.X%7U86MUC,S2S S@71'CEG9 N<$SATDO=B0.P*W M+@^W#AVPDN565Y9LK5,CG!(..W&E\ *+*^M_I4 J<>7I0PLG&_Q8P]Y$)Q_1 M6J?.1<7 **.6*C4J]#%D'!.)Q;M:OC-+>L#'T^[W:J"T+V(UHZ&98"F"I6S+ M4DYN2=KK:XM2[:9][0)]B+8BV O ME\5>*B_0E/56U^A(AIVOT!3\1? 7P5\NBK]4W3?-D(U65[9:-EM=4Y)5H:0(+B*XR%EQD8-G*N%D)KTCF,>>B56_Q7@X\'??>^VF MD+R?C@$.+O^,Q^WY4X>#%BY+]S5VPA?/9ZO3&3OANW\.?YN= ']JYIX$:IK2 M-N&>SY,@\O"YGT(Z@A>\TL]O7C\>IFB8N3$!4F=^B_,,\)C&JV_)#8VOAH:6 MQ\/G,$+!AO/&NV)EN6[9JJ_G^Z MTDIO&H;INB?."[UZ#JGSYY6#XO>3,WISWJ/6;XNG T>3K,A2VA8LNBR<-ASE M@<"[F44Q^%X_?+V__3NY?OCQ_>%'[^GNX9[4=*7W#T^WC^3I =9Z__CP[>ZF M]W1[0[[/LA M^B?RGPN\8DDJR,MRX,Y_!= 'X?N-%[FC()J&] DN_WT4N'_.F;K-I0NP&]KO MQD(/F-Z-TEI=]] ,L9DT9Z.&F(R^*:9\$ Q(/*4CAT2AX ]%"/G@^ M?!-,X57]Z..GE=25$P-,HLSY-A-AL*.1,XGHI_0?G]-<)\]G*V0W?4Z>E3![ ME!#+%=!(ROSG.3]K=SA/2[*DDC@#9EH&Y/Y\Y<6F .<01]2!UZ6W\4J\(,;!\\T M)+)$E(ZBKBQ];_[^BS7:&^K2,0) Y1!0%B!PIAV_?SAO!&P0BD_*=3O84IMO MRMC&:LW@VH]M/+BA.],* (G^2''HGL8/@Q\45O=:WL150$>Q.E+'SI=)-\S" M%2-9ZU" =K:T74&#R*/3-ACVIBR9RMZ5=F(4ZUY8\K<@_/,*3(Y)&+@T.K<6 M1\>3>@C'._\[A^)^I(&IMY(IYV+X7#6F?O 3!COWGZMO7^GC,.07C5X3B?LQ9;W5U1>H8^3;IM>?.HC%[8[ES MA0ALM+J:+5EZG4;F[*M;;VW.)O?M'GBNI[V[KR^K>K!@:J]#*D<4TYL'UP:I]C7,W9NG.)X(GP73F%A'HTB:595_:A.3[<[)UUM MF3"DSQ*&BD/T]BFR18Q/R7&5RKCX!I8XI0\3&@(8_)=OU(EH5)!G49 THA0D MC?#[=\H7X8\K>(FR,JG#7F1T_YA&L3=X/VJ>Q].0DNM@#.][_X^(C-CVB1-2 M,@F!X$)X#?^R#U\$$T1:_-T-@R@B?6\PH)C<0MZ"<-1_\_J4 -095"+R-H3? M6+I(\GR$37_JQA'QX+^ 'QEXB3IQ=(\ R)G" MUB(WI/B(]NJ4L7J=9"]"&"8I"9R4DKP$"7<(X'S#/_P@"YLY1!P 4?P&A_E^ MY<.S"P 8#P%6[!F.ZP+?Q(0@X-6$I0 !R&CZ,"2*)%.(PQA_8)<&TSB*X4UK M#C$]0/9Q&(SZQ!L#ZKW2,2*:YV/N@P\2&P540TV*_#,IZ0]I$*7 IO[=-?;?*T M ,601C'\RJ$$>W-AC;Z#SRG>*4/AX@-J-P3%D%G$0>R,EFD14&1"_8BRK>.Y MQUBL>C6&)PX9L!&EDH]PIP<&.@&4 G 7@8.\ :C^4D:_4-?K%XOBX3J(MM0R M.C/YH79:75W2944"N.;T#+;%4@N6#[Y@S N09%TN7# 21#2A+E+2Z)UA]HJ# M=9UH.*>0BHX7*>APY_L]66UID"EXQK)AG>*,=UZTBM51NEJ,F*O/.4^V"9=Z M\_!,.[_FWHN<,%^4Y'\"8X=#^(D8V&U U>?& O M\+A$UH*N%I/T760$_-<;>?%[3=G&[L2GH??B2+QB]U6"&:#86R&.D$\,T12> MY5@>T;2#LWL#SE)2=+TBG-,/OF"33=*U[1K)I]GQEI9/I]O8??4O//2EA M?U]1O*,I6Q;O',Z?5BP'OTQAW70#KT0'BQ,EM3S1+I4\LE94EG#TXA[;;ENZ MNDMMCZ6T#:WZ(ARE;>Y8VK.V"$=I*XI691'."6(MV]35\/4 8PBX@_#3%%AJ MB%>UNMA!@MPR%IL6GW >J\K2&9??%,=J>V/TPI&+*+JA8P>]<"'*_(&'PF+; MDBN1YR_R_*M,:UBK,:1J\@Q?'P9?&+8BXRH;VM145/AU6:3_GY;Y */1=F(T M(N_Z\)1V,Z7W\,0G9@?^P\^,%V)H"Q*RA!BJ.0EYK^6ED(4!.]O.5U8+*50Q5K!\ M0M:=4:75M M15(*O/2B4+'"@J?B%(2E#(13)1UBN4A2$3$):83%!J\X,F76,)4G9!2E8<#E MTQ'>Z/F8UI1)?IJG'\%32J7D;""%%410-D%'ET%3M"2MLD37#56"52U;:755 M6S+U56:;!=I1+.V"Y746);&G:6=_C*6=#YQ7+;-[33#963S-T^(_O- 9H MC $G7,"%YVG,?W9!043DB "[O0'0#V 6HZ>(+293][)]>=[YY+^G/IT7 \Y38O&(F/!A=6]<\&"VJT-6 M?4_A2I\)^!Y04VF>S28MK\A8C?XY=4)Z-0B C3Y/O1&K MN0-I^@A_.Y, BU #PAK!((]TB$_?4&#'H0=L%G?&$95MVX73"4#CB/ !O!#P]=#Z6[^R\+XY2*--3K]%&+06U !!?!]@:* M&6@;11#36MWX+!M=P)[XY#_S^-)P!/UVU 2"G/HAR)P3@1MZO)"U]69== M5 ^&3L1(DHEU+M59Z>U"Y2V=)[P/O6B&C\E1CKX9&/)& M%'Q@JWD*X$#IVRY@,5O= 6@.'"[+L)!2K0>Q<#H)>"TQ_37QPH5"X@# X^'& M$ X(P (HS/4G6 8^#V^$504 0L2:F*UC1Q2BHT4^"4I\K-Z>+R0=$ MDK*0N73DK_6B7>2^O<'4W%,0&&!B*L6E0Q4( N5 @L "Y.I7\5XP0\F=UY) MD5$!7_.BM,?"()B&L,%%9J8O,S,O9J5&J5DYXV>;D4F"FT)FL'JI[77T3>Q12[WP/M%^U?_HF%0M"/09F'!-,_"X+"YR(,C@[-E55- Z3-? M4[7R\ BX;ZS#_;5HS/Q+O/U*(08[K.E*G)@LW%V:\:RN+W7C]6C.<_!*&]/. M!VSVV7@=0 CY,':[O:%Z9PP3+C" M/>01HQ?XSY9)F::EE[6DSFPHFK"MFL9:QTC;M M!Y0KUHE07B^33VT!EHC[U$OXK7&_JSSBRF\'I"]S$.P)$2C!>V?E;@' MV %2=6W0= /R_2UY>X^__"9Y]P]X]7<:NLSUFZ =Y5%3W,''#(U?$XE3.)ESKF8^>=L_+60 M^9&^8R82Y$))\,XL@!1.H-_+G;:5$P&94RU>G'&$Q6%10<':F-P]]$'F64Z! M]KUESUJKCCUKS9UZUN* @C=O-%HWY=@T\V%&T\PWK$V?M5/+6O; G4<^R9II2GFB'GWNOG\QZI74;]Q8 M$V. FB(9:E5-+.J0 %]3XN< Y7]^"4+X"8S37US><;,HD7VB;FM+B'[8JT\K M1LW@7ZMH*3FBZVD8@MG^_A3"0D=,/_L*>OZW("K=R,+JX%1,W;)RM/91E&T= M2,8F%A))C*,3-J02M3$' \N9U\;L*MTM3,_09*FC-7 .;^584M-I/YA#4S_/ MB;63Y^3.CT&!\3 :R1SHZSPH5D&BMJ7D/2CS9Q+^T)U<*?S)!>]3=G>PX$#+ MF'[S7FE_>>,K.M):ZI:.%_W(CI?>. *^!>/6*?@YD$0-FS%BS"ND59+,7\+ M^F1V\+CPG1W=O:(;\B[N%5UNRUMZ+$HY0K0VL(*#>&VVZT![UHM55O^\0Q?> MNO>BW5(=^8HCP5@5TW7B464?_HI>U3/JS+LE-'JN.QU/64H3 T/"_YC(N#QH MW--X&\S80# IM\91%GS>QG3&4949;L1]VA#^]Z\?(^ MJ2WU]LNT:2_ 9+6M]3;K&N68B:+2MJP&MJPE=>1\"\N&F;*GGR=]60W6!6F7 M]93O0=L9Q2JK4Y6F=LS9L27=SH>EMG>5"[(39'<9$G6'N>R6@0-(-46(TT.' MH>NLZB,RG5=$R?=6FH^3EQ[VJPP/"T2 M'ZI2YW9'WZK4.:O5U22MH)+C)(D/ K-.SA=WT5ALS)[1+IPKGK__\3[PK["P MF&)S@Y>0LH*IW922^K9/WI_XX(Y]M9(%9K8*?4"I-/17OOBM2.?1!T MI=Z11UG,<9+S,UE*NXD$[IP';V.:11Y-%% >"KJ\7Q)G$_';\ZTM*)7TO&FO M*SUK9^AF+K?EIC/6#8G&53NR;!7U24FV]>8QWE*(<6)/A"#H1K)<7R^R=M9M9 M>D')T0[IO^?SSBW3Y@_$W9Z\,8W(/7TC/X*QXZ] :VL/K&YH#K?([Q?Y_2*_ M7^3WB_S^0_:4:4HVXOX-9^1.KE_&@7U%QLH$_YKF!XJ\7T%IE32FV8/4JG+B MF*VN;$JFEN]^*O+M!=TUANZ.17:[^',L;$,K*6:^8V]-Y9O(?S^+/,\J*.78 M<4-[50*\2$>O(S*55'=.';,R.YCG*%F&R$>O/6H="[/*2W03](>N+-EFG;C4 M^;NO+B(]O I:4*M.#S>!O K3PT6R=AVQI:10WAU=MD[6-CLX)]S,._A$LG;- M<.=8J%.8K&UV<,:D496=+%*G1>KT]JG3&V8S,2. 4%7P@%EU*4=R?AJGQ7&">7)=/*%[/MFF\M MZ%G0\QG1\W'(>1>'(4;9%4F3\U'V1LKCG2G&KFQF3#G?DMSC/L;1JOOJ5HR%\%*&EOU5X?#SPY60ZES)_#60K[Q'FA M5\\A=?Z\<@:PPD_.Z,UYCUJ_+?;2]_STX9;2QDSGLEONLOS/E[AOF F:2U6>O_P=/M(GAY@K?>/#]_N;GI/MS?D MR]U][_[ZKO>-/#[!%W_HN S LN6THZD&&/RC5#W_0VYJF5SG\ MX00:W[)$*4KIY^L!12,(&>Y^ M6 AGA5J_N_U G)+7PN& )]1J4/VX")S;69 M^G&9*H>F3KWCT\$,73PXW\:TI"R^*<0/O6GF!X>U#JRT2LAFQJ)F&VZJHD, MIC+1]$O.8*JB5_[N!+U##I-LG$E;RL8E3>$!P%-=>6"JMN'V-4V5K6>WKSQK MMB9;ENV:JOY_AM9:GW]@,,YSW#098G\BY?)8OH=!?^K&?W/"T/'C]QLOW'R'3YR,6(9CX>T>\J#/)G 4Y^7PAZ\![PE3 M8)1$@R+8Y,WQWTF(.0+]B,3PW3S]Q0VBF,6)IZ.!-X(GO) )!SAYXU#R:$2< MF-T&-U&\. ).0)Z=".Z?3@ :0R^*@Q#QG#TOPH29Y('$'3G>.&IG04W&SCL! M%A609YHL"YX439\C^L\I]6.\/?>ZMR'U*9 3B2; D0: -_#)AW<%(7&'P,M@ MF9Y/7"]TI^,HQCH>^ *V#BPILZE_3N$TX.2?X;7P]#_]X WS=F"#;\%TU"=^ M$).A\PK;HQ1^CA(@&T_HOS0G$I M M50A8!4]#Y$+T!7 !-"2V"L#A5\^E(*%&L+?P/<$5V/0T#.%I>'H!_(L?F+/\ MZ#;I^<3IPYT134X<;T'4ANW#\N%KW$\0<@0+:30=Q82E95'B4\SU EQ!OHT; M@;7-M@=O>O4B1$TXR/R>8<+V-?R9Q+X"3A] M)C$8H:6U98]#"N*VG6,OY1/['@9+K/&;YSQ[B \KDO?D;9/W#B<85K.I# TC M[(I0[XV&M($I=Z"AM#M75KL^/,=D>QJ\B.:ZIKH:I*SVW] M TW-9*J1?73P"H\E;LJ8.QH^):TB&P?8:D:.3IJ2L3?9V*;2?:,ONI% M$>6B/$G\;0;H.P;GLB2B=##<9"*;%2[TP^+"%VZ% M86,D%'0%6M5E]$LJUP%G%Z+X[KRS]E.EB8&E!"EVGAA.T@KGH.U-SE0.'6+B MHG#P"P=_V:E3U2BPBL(Z8G8:/ZCQ7-WZ9AW=^G*GK%__.AB/O9C)S)[?OV;0 M>*&^"VKE.A^_HN9]_(J:]_%G'L^\CPLOV,G9S]Y28V?_NGK7C'>7#)T^":8Q M^LB9KWDR#=VA$U'"J *=]['# @%_J9(W)2^9'PNO]8'W_ %_CJ=C7J#'?X^W M-2HZ<[S0L"1(,E1=ZA3D5V-, 3WM4^;)Q _(]H 4_GQ[9\'LX:S(?? $ C_#OC^I^$U)G& MPR"$)?<7H)_!DRC&:,8+8V5)8"5*PEXS#W^ZT-D!N6DC^3[@M]^76.P -&$7 M?GOSXN'2??R45X1EF%MC\7HL/A\_(](EX1&.2QGBYA&^C-L<=Y0"#"_QL6TN M0TOF!D?FB%^%%-[ILZ\RVV6AL7E +'W0#.>+UUVXT1G$V;(D%M%+""SS0O8N MC,*Q]\'C(^#1''0)UG-7#L!W %C53VDAIN$XRB/0K"]PNB8O*EYS&L++;W"^IY!B*&T>Q65H0G]A%)&=9H =4+ I\HQBVN3+-(2' MA.,@I(O2P&$Q+.Y! YD;P3\#?X$B4B1,]S0COD$Y5&+,=O4!+ 29&=HMQ'(E M#GM [TRD**4Q#SB$BY!@]^%3,$Y*4W3(+ )9-\V&<.:_)N*0!^X9 M"$;TA?',P*4467%$0(\"R"%E>*!0]0$X<$$2MO=1;F,FP#3D6/*,,7.&G(@^ ME'-SAE0 O9CZG)\^TZ$S&K!0-N#""PC@*,YB:B;&#BB'9P@L!8Z=7P2"@@7T M9S(;3B)F@>TW9%TCC[XFV(%(/THCI; DCP7T$^2D8^ 3("UF:0#./)2=QIXI M"W_CDC'F#M0,^(F_IQV()'C\/Z<>R!I0!8(P"40SWA0 [^)>MR5L$,V16',D M?0DJF3^W-Y#,SLQ $AV5+KZC4IUL9+FLC7P#%[TR&K\#;AA.4VOYOV@?=O+2 MPRPA+]YD,>L%%K.>MYCG+R.9M^UF*K/'%[Q4J;,!G=&C9RE0H/S ): 088Z2 M[[X3D!=_9G6"Q$AXYXH#2L,)DXM]B@8.;QX%JA0JXUPSF 0@\F(4&'/1P?/4 M4$(LI<',U9@0-L9M62Z3G[G3.8(7^0'P+99DA)KGXH(Q&LH%T$S*95Z1VQUH MD3RSBN5Q+9H6C M$/!L.5"=\JTM C\5G36,0I_]BKUA^)'SQYH3]F=(7<4T< MQ.HT9+C+Q7(_8$(7U5C8B#,!;>,74Z< ENN)IJ,OD\T?SB_T*,P]#/Q=[P^# M+WQUU\GBYB@?R0L.!T A]U-_&KYARB3UY[1DM+JHMJ3V]C)UL--FR,'S+']- M&%&RA,@16 +3)*%L,^QGFLG<#\!.+[GM*GOLH,E2V,2)&H"-FTA08;ETQW$KM7'XB2U&E11N.428C?TQ4W4R"W*.48-O/]F.; MW\C!BPX4_?-*W]\_)N_YPH.%U)J[^R^K!=E]P#?.W7VEO7QFJZMUT,.7 M_E?HZ>,8@B#Z;P<@A"CWOQGO!=*4.\=;%[1UKA_C5W\$P"K 3+\.PDG25(U\ M".D @ ]/AN53(MMSRS*3XCGGYV"SQGP:T<I:DJ8;A8>$WA\/ MS'ELHCC;+7"6UI?E_2+W(A]PUQ];A8FUCS-8,R?@S,*:^2VVI:E=YD_(+I[3K5-:MR,15[.TS<4_-JQ:]BWW._%D&+C/C,P[:O*0__PQ=S6C+ MR@'Z5RIMI:,=I-GFZI?NO%CX46W,8AL%V4[;U(PJVYBNK%FUZ]',<\NLB0U) M-N<$@.+,B/4IZ_7M:;OE^:8&VC:%_PO9'OD&CF6Z.]82UU.-F7D6_XH6U_90 M6;_K;0K8SQVZ/Q]O&&!OP0@ NS5R@P"T:LKJZ=&ON=#;@%Z%C%HN MF7E]FI18]IQ/'N8*N5L)K+FO"5"*W"RX>A*'=M;Q_&D;--NYZLZLS*=DXG"A@\Y:GYXWIT[6#F07)]T\@UCM,">=L<)!UY0TX@;- M-3O;S/^S2M\_,A5B89&I2)J=[Y,O2% T6"PO0^QC8J^"Z=S% J3QN-0\=E[1 MK,D:L?,J^B<>E2#45E>7E()9KZ)HNF(DN)V&P9E519=47BCVD%["=KES3&S7 M6EW5E/0FF@\55F.+5K<5:=['15X=D->63"W/JP7R7AKREM0S"CGOAH84U2*O MT>H:E>C= I7JI[(>%Y5,0"5-DLV]AYR+7EB;L. 1UN9,@I FJ9R7[0*/7@I0 M?T.%>K6H;S$7>"/UU_KY2RX+>0OY]E&1UVYU%=1?38&\%X^\)96.0LZK5H:\ M ^\7[5_]BX9! =YJ'4072Y&5SS5RD@DTJDIW/18:R75$HS/UM5X//9:U\8/Z M8\]_]B[;[^KZ^;";O&&H2Z6B7U-P1%U#\S:$PZ&&BNM1L5?%E =)TQK8NU @ M[VDUCD+6JQ\3>7&L9''S.H%*C4*E0CYX5%326UU3,N1\XI?PNU:,!'_07]C" MD'RGT6XY _4UV4I*__$O/X_U&T9N5(OU1JLK-U5W%0Z'&NJN1\5>$_.[BH9B M"-R]--PMJ6\4>U*M%=!2[54'<]*B[9.%58L^J$26?J>_VOJ?_B MP&-\\@4GC*XN?&ZFU592 QA.!WG,/V;!CL[&8MEJ0S58X76HH09[5/R5686" M(K)>!>Z6U#H*>>\QJVMT!7FO;HO$US/ ID).>%1L4G$&K*):-<*D,_6__HX] MA*,A^8Y+OVP'[,OS)(?VRC'K7G0LV@*T;Z#R*MP.]5->CXN[6+,EV;HADNE'(=X]99Z,;B+M%62\"DQJ%285<\*B8A.W5)=EH4).!_2927_*5 K"G M 6Q3PP77CN_T,5JP1X5A?7T,93.UG0)6?#D$IC4*$PJY()'Q229<4&S05&" M^NG:3;GR3,,OCV]>%!% 7-^][."+.\Q'L)7J:M_6%BP;RNJ"Y=HK5,+G6$-C MX%B(JPK$%8B[JR50Q'&/665G:*B_R4J=,I4%)E5E"1P5DW1F"WV#H[(;"+KG<_1"Y$XI"]. MB(>]8BCW^OFL.'[7B9)QKHT9UVJ;;=6P=IG6*BMMRU"K'],Y6U#IQVZ8*:H? M9 "J+.\&@Y,L5M_QP(Z_6*MM&[L]56#!1BPPMWML@R:?EK%"9EO!/A*+?';E M:,YZC4BDAQ^A:I\/R%!K)]L.GCW/V;("EPZ+2Y?#0)MP2(]#2F/F*/@6N,S,%82_ M * '-PZ>:4ADBA*: MR#@12?OBRCT1 /M\E$P/.T$F$7O.)R^&%[A;\8V9MX/@F;A3L,0. #PA8A6 Y#FC^PN MUFB;/+*[BLRV/W4X'V"7K4HMSN2L)@#7E+:)2::3)"7X M4TA'#%A);FER()D;D]RASOP6YSD*1M-X]2TY+WPUV&1OE1TL&XLPR/XY#.=1 MG!=Z]1Q2Y\\K9P K_.2,WISWJ/7;8J*OYZ\ON^4-IW(@2&V6: Q4 MUP]?[V__3JX??GQ_^-%[NGNX)S5=Z?W#T^TC>7J M=X_/GR[N^D]W=Z0+W?W MO?OKN]XW\O@$7_QQ>__T2#[\O._]O+F#WS\6(<(2 :7<0-&OE%;)7/R'P0#4 M>7C4"]?KGY!R\ZGUIER46G_,A/DG3(UG.>XL49XEJT]"&J'3F&7) TN+(H(, M\!7S[ 9!2)S1"-ALRDH3SQ)!E]-HSE;)V]!SA^2-AK,'@GH,4'6(3V/R[$1> MA!_Q'=>!S]R8S(&=I.X0%H&-2']*21RPRQB?Q.S]@$&7O'GQD% 'WN)B:0D- M)TX(2VQ*JK[=MG1UEU1]!7[L'"*GWE*TZA.4Y;:JZ4U9K-)6E(.D?JM*Y8L] M&!H<8K$'0X.#+!;1P-P]J3Z395VO+(339)HW 09[9Y(?-:?EO')C1()14S/Y M!-(+I&\:TA^I!>D)]OV5FVJLSCY".RFD;O#BPQ/Z^X3_-^2N5)*O4A_'ZKXA MB]*[;GH\8^ONF+,6 ]D&!4SW+'+!*@U-)2A[_B=N;'AFU+MO6*1AU+M_S&3K M6&0YZE6KR%EH&"E=CC*1G"*^I#4T9:)AK/#,*%AH%4?5 M*M92L%Y):L:QZ.E\2R^6]0.,R!XBZ7'VC&;V6SRB-&3*^#6&J6,:.J.'9]@= M2V1X"G[0>!KZUTXTY(D))1K1FH9H1"O0^02BX4#H;*Y&Y_-!+B%A+H0, ="9[N.$N9\HY[W-$Z$!'HIDV34 M6<;I"?V323*H"B?6#Z:86IJ"H&'NCVH=F%6 Y6(D[LJJ4*MS%O'1"I"A&:[. MLV$&U?I"F\\,CFT1%S(#N?IP:_,I\YS5G&RAC=!UA*YS#KK.^II<2SF+T&WS MV>JE<02A\)S<0;."(Z@'" 6?D#ZW&RMVG&%A7QW/_Q9$JX:&T9"YPWRWH*;9 MTDY=T[QZ"!@<-'69 I6I7_;FVTX+DMUL0?(@W3:L/H%%4\># :VV.YQ>2\\' MT]J6NEL!Y]HB5JVM6;L5\FZJ"SW(L"73.DS%K5ALLQ9KERH/3B](V93&:?]L M)VJ$P!.78E#U*AQ;402*PVK0E>*P&G2E.*P&72D.JT%7BL-JT)6% MAZ7(E2>07-H(L97!,S%6JX:^'8S^1>3#*(@B&GW,=G[P_-E J6!"0^8M/?,I M6U^"$#ZF^W;?R0M AP/GXR'*D3;=MS%07;\4BHK&@)3;>1WSICZ4&V=@+2=* M((N&?ZW.F$CC]@_^_+O[Y?(5?SJ^Z@?Q5?+LHM0*O=4U);T@IS2'\I4>6LW' M@#20]"J:$](DTJMBD(B];8I2501G(,')AEQ1R9B@.B'PZK#E<@*OHY],X)FM MKB7):CZ;4 B\9I&>$'B["#RUF:AMN7]-4V7IV^\JS9FNR9=FNJ>K_AVU$Q7@N,9YK71JUP03: M*B@B.>OS;STN+IF-8$3PD(GTOL.@ '>EA MIB#A^9V\S$! '( !SD*#BZ>3M/@@ =9_1(3--0O?6<%",/9<#]ZV0ZF!+#>K MUD UVYIM-"4;7&WKLBT6*Q:K[S,S;*]L09%M?C8P6)U0?F34J6M.JDC*%6G9 M @.J3_U=BZ=39I"[F)J16ERW]"KZ!CDKK2ZABY9VJ5-SSHSXA.R MMC3QJ:&&E[OD4'M],P MF% QX.,@LC676'=\6M-;75V6K(*<\MJ+5C'DHX;B8T,7R6.@M-'J:I9DJYT: M#?H0"%85SS1/CV!FJRL;EJ0K^;QDP30O#:>K8)JYBK+CXS0F_IJJI%=6ZR+& M(ZVMY0TICK8BUT//=PX1)-N*J@K 51.JJD)2;*@6.P95V:VNJDF:I3=/4!23 M4BTFAS03I2L0%-J&>I##H[35Z;2ZAB%IQM[:M4"P^O%,[>21=:LC@R:BVI*E M-M E(7"ZADSSY.%CJX-3L*,>Q\G=8/\1!TZU[D[:9:G[?!6H68 M.'E0V.JHH%IW)--4FR>?$H707//'FPS^H8H%G+NJ3K^1F4S?5;'Z+KYI8Y,FRO0-3 Y++ Y.K8DH&%F6ZAM:1++.YL23!4!K*4(2^4+6^<'H/FMQI=4W#D(RJ M2U,N;\#]K1][\?O?O#[-#(9?WZ3N>QCTIVX<]?S^(PU?/9=&N1YUEISKQ7?L M0?=5-*-+OX[?)SOUEM.+NJ&TCMULSK;;BF'OU&O.:!L=Y0!-QE1KM]9E&YJ, M&5LV&2OWFW68CFB'6:RN[M8;\*P@JVZ'LZ+7G.@U)WK-50LVT6E,])H3&'"! MO>8>8]"+G;!/)HE]0. SB1(+072@$UUQJD_F.7D5JB5C3K'9D>1. [-Y1%>< M^K'1LZ7W*C*=3EZA:\DJCN:Q)*4@>T]07X.H3TC;TM1W\DI>2]9:75W7)4MM M?.:1H/MWR:FV(G?__&K]E(ZH]6N:2^YL&(K(W3^_6C]%%K5^@KR%OG"FM7Z*(FK] M!$,1^D(M&,HYU/HIZJ76^A74DQF+!/8/@+,W>#\6]BB=?^-OA],*0A8(_ 3@ MI2%>U>I>!U$D2+%-K=S)]Y;9P6"V S?9 7%"K Y$?*9] M^ =I?0_IQ '$H+\FU ?T9NG. 6MYZD[#D/IP#^!\'+5(@(6#%*'!<(E5'/[N MC!S?I>1Q2&G,[G7&@*SX$RS@+V6(=$,#$ ]5^TGYX';O1K&$31=M38 MF5.CANFN.*A*@@/($23;1ZFU;^A=5NG:=5B[)NFFM6+M$0D&)$G>YZPE*6%@ MV[JA+AW/?E'Y3XI$0HK!\-A[I:/W=B,0?1T1]UP7L3 B/V"[WBNR*&E&QJ3' M$%IB\)A]^$80(@4[,1*\%Q(?:)O"!L=)E3&B,GO= MJS.:TC9Y8FQA##M_)V/'\V/X#SD)<;!PF3$(YP6_BXF'%14%"P0A;T-J3^OA6:O"5Y\I#YD>4[_ ME:T('H,/P;)J]G(0=0[^O%U^R(RE9A*A)/L%IHIK#>"#BV>Q=(B+VTM?E^P?U[U$VJ7*[5-\F]-4+SW> M+T%XS0[O&YS=$_Z4KZ57C*):^CIREHU5]R@&YZB=0UV"O/C5B]_93WBQ/ZO" M)!-840#R%FLQB]GT#A7Z5ETJ]#59WZ5"W[3;JK9;^?7:(FJKK>G;E>B?;T5; MJJ)QQ2"5_R05_?L,"S@K>_FL+-X-"FF6<=^ V1B#J9!G[T5VK EV[/[#,.LW M>(*]VVR;>BV1^.@: $%8(/T69FY>K'I)NMIX7L8O'H1/*2 %HHHP&IU M5;U.XV K$EWUIH"_A5Y,KX+! .PV-$>8>NL&L#!O1Y1OVIRB#Q7B_';\G\'\ M 4!>1 9VJZL7^!\^"AEPH/.'HX*//J&_W*'COX!9!]8XX?\63']+ G!?_%]; M&[()Q&\3@/\ >*>"&-1H]O>B]V[@_:+]JW_1,"B@&+6#D3Q+D97/YR<\:D@O MBW;/AG8NEQ9C%$D+52$=.1@P"3Q?B4HD[DQV7-G?HOSS!S(JV\IGYZ<,MI8W^R;); M+FH/>WA(;>8,/,;Z\/7^]N_D^N'']X[AWM2TY7>/SS=/I*G!UCK_>/# MM[N;WM/M#?ER=]^[O[[K?2./3_#%'[?W3X_DP\_[WL^;._C]8Q$B+-%(.I?< MLH'WE0PEW"01D23SXO?W7ABBBC4&^-QXD3L*HFE8$$-0E2UC""K+(*I5P&#+ M*)"('8C804UU:!$[$+&#'.\NFPFGJJVNUI%,JZI$..% VA('^,$YHVQJ0))6 MX/'4KC3CB\N9!4=KDC\@_$SE'*U+Q-(#"+#TD=)4P\?Y*MHY5:LV@FI^S)$_ M2S@S;0Y(9P+4$B9$(T(1^U'([*\T94LN32J8(&E)5B=/*B(X<3@JB:>A3_,& MS44(C(/2PP \]UY1],X*D\,1JMK2THG/P5^>UH0$N/4@;K+D@\1K!K^M1"R M6Z**!,373%]UW],(7:^/R:)(*46D@*E+9KZ#39.%0@VQOYJP6[)=$78[-%C. M/.RVK[/"8LX*I<&-KQH1?ZMM(4 O(@[8=WCFL#U6)=?W0+Y(22DGRO$[723D*+.858PLD@*/Q_&31;&G]*:^4PM>/ M:(1A";S.I^2=.N%2:4AQ2!3I B#AR@-3M0VWKVFJ;#V[?>59LS79LFS75/7_ M,XW6QN*QHP?!B*Q^(B4'3 Z=D Z#$=!'=/O/J1>_X[1(_/)W)Z(SK;P@3F5S M/@7 H_U>G'QWE9LF^1C#75?L80R9*#MQ.*%;7HZ9#U0O5>\4!.22%Q6\7JEO MR#4QX \OX,C]'\&(\ZF=VU,Z;$_89^<58>#D= MQ>A&0L/DO*"8C\J'UX_%GU/K(RQNS;&/E M#=_Y'6URYY,_G'>FJ7$&%V4((&5:*=-S)I,P>$5.Q;Y\\>DO^"N<)"?(XY'\ M[![8FMF"[GP,,'K HO! R0>\&6&D=#ZS&_!;]EG^_)$7%LZ^QLV,68B4@V\9 M).0#R)TAEC,M3DD8Z%.R3 !S*8AFPIR0O>L$0>EC!V M^C3SED*,[LCD*_4I!E$6,)L_&T0Q'# +SN.&D=Z8*%]$'V,K)?-0!/& \J981LQ7AJ7#<,^ >K ^B;AX'XOXP7,80;YAM7&,C-7G.,/) ME&F&S^\@AFCHPB4?%Y#IV@G#=ZR](/PDYCC56]E]0$K7$1,PF;;+92@/QI3&5O/0V)H&_9S1W@P;-#A%UJ2.DA_;1)8/!30$QXM8 M.A+2^.RE@+6?N@*@)0W\:] QGD-OE>*H M;*4X-J/S!C.+5Y+YHF'<+X\W=E/$AX;HTU'UM>J3D[Z&\6XF*1(*0\6(2Y0) MVC;M1-"GVBRR[E2P,,W&\6?L./$64-1LTY)0P) _: MR9+ZS#L![/6%ZS>C=_)*T>Y AK* 68 S[I7WZVKH]?O4_X2 T%O=03 -$^1% MV;+>SC:*+>U=SI3]\5=L3N*_?&<1^,48&:[V4W\:O@4@#JD_/SP#UHPJ%+H^ MHF4[FW [;3H)_-20#J91.@:6P0D,-"^DFS:J+$0Q;O$>MC.^5$!%/ FNVB&? MW6[I9JL;4W_%RF=2#(*V#MQ;QZ6=^$'!B:&^TR;V@ FO=- ,.DR!],5@BD')9[- DSI^VK< M6;]#_?0[5))C*8L)K(^9._3 2!TGYFS6D>)B72P(4>R)!)S=BX; *T!93CGN MS(D#'\9>'%/&CQ$C?P]PM#2FT@+O .F)7A7TU"8I1 DGSU+N=P<]ZQY@5=(( M"/W+:/W%23L@T!$\0,,^>]*2BXA[,N#!W)&QC8/WXFI>;%'S(FI>2M:\<&=Z MD8M=;;*+G>LA42[(4")@X@(KG(YHHF/GF'U&W8EZ2:'+BG9A./;HC-J%%88# M$DZ]7\W/5D4^.@NX';VD!TYQEY(>U6P;]G:U-Z5*>K2V8JH[/7;];[JJ5+]8 MI:THC5FLUI85HRF+5=NVM1UD-Z1IE1B[M"9QBPO(&N3=<+\(4T$^>#YG,O-B MPBTFHIX9//[&/M#^%0-)#Q8$:B#[]VWBAV$?OJ,O1D!G#IT?%)O POK9I[0[ MZM09L<]/-!QSW)HA&3//+A#!>FE>$ /,'<#)\R//99_^BGZ\K6CQ2.6GH$9P M'>R8.6\/N0A9<0/K)=U]A^3J_3))ZY)Y7=+9OJ'4/3:+B9TZ/^][+YE_J MS,6N&14/33B7D2=-27NN=J))[;.:RU>5?JA+UW'B=%O/IT6?-UV6><96>SK$P-;#+K+*&XB?%JYTED VXI[9KU5CK!"9-K9]Q[M;3E[36 M +..>(KD99A250NC/6VIY!RFF.?L]^=YIQGS*B>[C$ZKJQOY>?8GZ10C3*=: MR:Y]T:VD*#.PZ;G9-F5A3-7V&9<5=BS*O+J\H&/)?BW%HF]#RY:3!QT-!8.. MMIFWXFK?\Z5AX92]KP4)AGWA M#/MT"M@LI9%E,Y96Q+"3LRFI=@.[[S6O5^A)#*U$=K.ZE(,86HM=$)/10,LM M$(6EM1.A9PYO1TO+ ,U,DJV\S['V]%T:KT[L=CHP@31.KI??=J/XP)@5O^UI)-K<2#0M(3=./>7]V-DF"5*QGD2SE!/>ZSP.>*>B MPC$4Y(.\NMIT^[#=5CWUA;E9E6KY5W;*/+^ '?)3@%_M;86:K VR9JO-8R#5 MXV/-(X*'IKS&J2<'@$NC.-')#-T5W&CW,*4ILS!E)Y_S)-A0G:.ZZQL1W M) NZ-&'M85B;"M!37D5&NZDV/K); V%7,%BMN/L? MC=Y83 M[&/O7T!N_&$P2W[GDUZ3+2ROIJ#];E;B[-UG,TO/V7)%)%#.!Z)H.N;?K>BY M:6H-Z[GI>"%O>%\P#2KMG0_'31UWUDAS$M*(\J;Z.()E?HS3V:R,>2O/M[3' MF<-5#>+,85C;OIO U=H=+EI*-]ZTVHIB'J+CHB[OUL]S4WO(U2\5BZWC8K?L M$KIEX\TZJ+EEE(K95NQ&]2E\PB;ZO!]QQ#=VB^V(JVC8V"Q W,_Z,D/1OAW")GS,YEFS=4$R.6@W)T6AUE783&C(?[U0% M<9Q"5LDU) [,86_GAX$*625D58W)L1)9I=>0'"V457LW$6HH<6PCJXY:6WK, MLM(DEI=.QR3O'AV=6R>ZZBV^ZJ;2%I%M>BHWR:&L)%N[U>VT]>86@M60&50I M*47/O7*&6SVHRNHPJM+JT5*O[L;9>>-X]?9737!<9CC>P$Y/]:4J(3E.9T;5 MA*H4I"KMPB7'F0;,9J;2:S "9!IY\?N938^HWDRJKIAH'5G^=78@*PE3;775 M!@J[:IICU5W8B;$:Y3SAO'JS>3:H/CNI <0G+4B?_L M8R;5AJH,(3G./:(4TW!,/G@^P4+B:'4;F:TR1>O"IM96GQ7'I\%Y'75M6 M;%LFJ]@^1B>TNA_E6CY:?)3%_J13':6%C1:74.&*L[8QH2H M4Y%K,\YX!SK6ZW3&-LZ-:^MKS[B@5'WY\N("VJ49AP>J-&;/^>3%\!)W_=DH M:XH,UM0!UZ1@.EQ8.'ES(L(P@DPGH'([) ZI$\'Q$L^/XG"*6$+>AD%$N=J# MUP,B1EX4LU^\>,@*IA$YD\8K_,*D()^78K?K Z"2Y[PIC>CD^UF[^J_4IZ$S M&KWS]@GN- SQU!;W0KQHNO]*J^%=)QK.;P*C:P1\A%V9:"' +@@C>& "0/Y$)R8AC::C.'V$.PI8Z3TOWY]@>RP2 M\!X-K(:?]&%I[24CZN2@WQ65"L(L)]_+1KY!\ZO/,P\W&#][OI-VY!@"EPA" M%*+9NX(!/\@BW($'C ,_P8, 1/ 6S(5AES>>C+S%U8'0 F[F]#/=0)+[EM_* M7G<&/ IA4Y]=;(]2,\G2AX>]8C^5,!BSDP)L"L;P,@*G&B-7& =].IK_#L<. M>('G2E]QOC9G+C%H<"\46\$FX[035/+&M$:GO!$^N=8CC!=>(2_U;+6H07^T!7)$6[3HWZ7)7P9)]%97UTT) M#FP'TEC+5VN\::/5-219M@NW7<1B2V-1OH\<0LKS>9>W!2I+D%Q3VB:V#IN MH877? HI*LJO=-XQ[-\6>[TE_<8Z\UN/5M^0:8%1#P?96!*QTEJ"2 M^7,8SMWW+_3J.:3.GU?. %;XR1F].>]1Z[=%U@1\*7FXI;0M>'_9+7?_\SG\ MK;N2]QT(4IN=QPQ4UP]?[V__3JX??GQ_^-%[NGNX)S5=Z?W#T^TC>7J M=X_ M/GR[N^D]W=Z0+W?WO?OKN]XW\O@$7_QQ>__T2#[\O._]O+F#WS\6(<(2C:3$ MJMK(2))?0 +&Z;=:G3L?[JA?K=6K:LQ0,> G&_]_>^_:W#:2I O_%82VO2M/ M0&P"O-OS*D(MR[V:<5M>2=[9^70")(HBQB# QD4RY]>_F5F%&PF2 ,4+0-6) ML].R!!2JLIZ\5E;FCK1(IR:+[I]=MM2NUBF@11I*8KVL=0Q%.=+*6BVO+ER< MLEA+DGMP=CGHZH>R5(ZVT$&S";AJJ'RJULFW\?8@ ME(ZX5!ULJY[:[^@*"6D%\_SRS(-FJV;EF>,ZRJ( HS=SN-MKZ'PKR= M1D_3ZU)%N-WHM_J[K")XXY?3!&258?+*8J5CVB+^(F-V#06I2UMH4PH=Z!E M_:-BW0^U;G=/W5EN_@Q!+][&*3G^':A'[W%B.,+(B_=UJP:(@V8;[5F]NWP? MI'J%DH[0D6E+&%>DIO>V_98*K+I63+ONR#;+N;L[;RO.N%L_J'8=D=70SBSZ0V]4TF&^YWG7YQ8K;$=JL51D]LP[3PEVSRY[[>4F MXD>I<2&+JNQ%S/>.).9?G7 Q:&)AV6XCI\G]\?"Y(V>IXN*(_6B':M>7;97VX<7%RR2QM=2O95R N!'[81 MZYIV=MEM-KK+5PEJ;Z#7Y30C[UQX9V<9A?I\U^*PHV11JU4JHE_3PPX-[[^H M[5;M&XKM )'U.']9O=#JG<'D,]>V9S %5UXK>;)6^??K> ZCM<"C:S=Z]2VG M5PINK[)&MBD!4I5LMCBW&HT-2EFS\-(RWE^&%TQQ&5Y4+G"'\*EGRBN#I?Q@ M05388+R0^R9RM!?K'2@V\WF:W S4+]9MB#\=WYP>AVBNQK49?)X)7N+B,"VB M0O>%M>Z@MA%ZK4T1>FVY_-\K[A+7^,1"ZZPZL:CH/6.MUZPOL;M [%Y#TW<) MOMZ>KK(?@AYX::B?U[(@Y^Z,QSAJ2KM @ZJ&%]]=V%^D0+7TF' M 1T1Y1."5"/5$Q$QAEVIQSSI5Y;B64E5'XKKS;/+[IH+X:7IL.*J5>7I@!>( MVEH^(78*.J$63^V>#I"=*.Z 1;WJSLZW/5S:27V7,%/DUHZNG^BMG6^'NK:S MDC#RWHZ\MU/_RRKRWHZ\MR/O[1PO*;FG5^8H:^FT2L<.7[M*%3JQ\EO-6;DA43IBOBXJ/K9_@U_^;>6Z>D.]AZDI? MU_2/%;H6(:_MG(JD+WUM9P-R4QJ@7T7DO@V+_LU>Z*F/1LBYSU-<*0QVQEK2 M_)=*X94W?@IKA%:SBK!]8R\"]5:4=J[" 4I+.[L\Y]5F\Z_,MNNR3:I0:^E%BYA^(:^7: M\&Q7\:TI_AV9@/3047AG"2T*8WREN M#0'7F-2 !V\*63/Q=8M?%S(0\/P"SZLRV7LKBNT?_OAGL=>T$TY? + ^#"%L(M+VOX=;*B2/#BN!5^ZBX"K<+=[1J0^WESP 25&[MX50.QJRME]F M?XME'DTY;;_,09UBM%LOL]W$P,MF1558E>WXJM5JQ5;["S!TT^6"]EI)XT'! M=N".SVJQ0&YKBPLE\$%W.&9C,[BRRJ2T'[.F5C(7NSFR1 MKS(9A+=?/V>:*_&HT=WX=WS3_X<53"SG1GSW6_S9]4;;,E=H9Y<$VV64TPS] M#XKK4%M[WP** ]"CF@ W=VK.G^ KENN!/^ 8G-'YG4'#<9&/%QXV;%OAOX_H M)ZH"1%0>A9X'8]ASQ9C-;"0V['7DHN"H3HA]Y.+0N.*AZP(CKR2[(T)O:^BN M9ZA^$WTM"<#?H]OM>M^%9YX$Z($F,8EQS(C&X(8OVR7OT-U""E!-A0M>CX%\ M)#^^G41$/LY:'F@C_XCW,7=AX-PLWYC?M+!5$#GRYEW9]E?7*;1L[$"Q'%-Y M1ZO+Q?2-,9HH>EFNNV"V_K#/0!J=(;[7SO0%8?ZQM#132.Z;$NO9XM\ZA M*='%\F&=U@H/D=.B)@;&V>75RL,R5704#1T/#) G!P8U<[=351P6$)_$2B3A M+Q]=.1ZR C0 I2Z$BU M#G^96"#S+#\I 0T'8(,2S8(Q1,(HZ420.(B;J()-ER!YJ(^AS+##93)_BF8 MIPG"_0L@BOA5OFT%XAS%>D(6-X%P# ]4%VGZ1Z@'MXD[A;>,GB$N'C:T@+3/S&AQO+%RPN_[7 MD1X"8]D=X73S-9 P:4HKE0&8*[K:ZN8W?"[?JWC#*@IITT?CYV]\'SY[[G0' MJ^PTT2@;]/(KJJSK:EVF6,46>[ZA/LU^]KRCG5VVP49=5^-IEZLXTI[K8"ZI MS4[^$45.F:\J2(^=MT/?,Y):Z):#]%AS'K;+51P)2:#W=%5;<=CU:NFQ_9YO M.!'8TYYW2'JTM3UWMS_RGG=1>K0'^< N? "9L]SNNH!SH<4N>DSH7/K7QLP" M\86_O9JZ(8;1"I_3=-8=+I9PF8^YA'ZQHZ9\D8Y!@U'R]34YPGB3)+^Z2F,G ME<0*44\P-OQT-\ZEY'*1LSG$[Z528@U>( [^0X>@! !XQ^"Y5=G"2Q^*A.\ZE-]:FQ)DK7ZCOV6ML+55 MO5J-CC:H2PDR.=E]359O#-K%)E2PN%L5,KS+Y-W&2QG4JN+:8^*W^,H-6J^[ MJ#I7+QI\C+*M\P<#RE\J6I$4OS MTX;F1+L\/$HQ&V^N.EAN@B85IF1PJ3!WJ##[&WI [8G!6Y3^G).K7U%VVU$E MO*HYQ/?,9X8WFJB @6=FN[/DU@=SGN!QAI&=8ADY;P*BOX-#4OV!&),#%+UYJO;&DA(55 N'C [.06I+F4G=SLU]!&^H=S1GD \0!!W^[MJ MYB4A526YN*-CXW*0ZC7/+O6>VNJVI6!\\RC>A6#G1K>_Z:9B=0^C(49FW)D)>>Y)[:B+D M]0K^*$&M7GSU>T=!+CWXM(@)V,3%&A4DU]4$$D"HXZT<:\UZ([,=KNE]8JW. M_^OK9Q6J ;JZLIRBM3\4+ T9U[3 (@T3UX;]\7F)^:]NP#Y9_LAV_=!CRS4J ML%^!("0SKP+Q.QPY6[F"1E;NV2ST1A,L)/O-KQAA,'$]JF3""U7% ME"I=9+B_(4V<]B+9"K$35_$$>"$7K6SYG5[O[%)O-K'X3GZ5H:@D>DR&D3N= MNKAC,)^&\ATKX<,3EB^HAY3#YDHX.Y4J,IN\;1+62$T(Y"M3PV3X]YF'%;.I MB.ABH>CHX?*]7@;-#<5F'[%8<>C-B:PDF_VK$3"/5[Y<;*^/F;C=7B^?@'R& M4:GXF!R&_(FM] ;R789A5-9>LE%VXPW M6?]@P#ZE:=#'(H=:;S7/K.O#LZ8P6518&"OMV RKY"3<$B9\)IBKH<02JQ6] M_SJ!E45GR7W8X$KM27SU07!W=BR^]$1\[4P<;:I]O4-QU*>;/YJ^GDN)Y7@= MQBT9;T/JZUX8KW5VV=745G^%J-V2[S(P\&$5N5@HH,IX7\%(G>T0/JT#PJ=- M\.FLU68[@,^&XYB]P >\ILY [;9W)+;C OTV,Y[Q30-V>6I8#OX\-&S#&6UA M" XV==G*E:3WT8<3D9H\LZUPQ<9S6-9U91>^E=7[LJUNID8:_Q&&EE4:\M X MI'8@44\IDX/T(7&SN\6QX%N,=.\<&J;14RP(P)&#+GD2+$FPA]"1,2@OF M,2*4FI8=\G)UGCM-.HKP9@=1$P3^+^#D$5/Y;!7CV;!LT2^4VW(CPY_ J@B4 M5,@NNV8KJVQ=(,(/EI$:,!OL@9)62%B\U@V?)HH+JXX:C\9OJ/BC'QI.@./= MA^">:\UAYT)3 L\@< <_ 8""!N6#\; ;/GBL.>W,#BS1\\>(+O'];L7_2H M5Q==?SM%^_4L#=+_6R+>T(GC#;+2_YNO]+\R)'*$^%*G;'SIELIN/QH_UX64 M,(%O,:34[RV'E/A@"HS&_/5AI!7!&CYHSJ?TJE=:37P0-A[SDL94RYPZ7V%A MW)*]P=:W;;^)OA%O'W99NN9T UV1E%S-:P/6[X/JS^OKMK;Q;OX\M7W.$[LJ M+!^,O\NM!E^Z;65>Q?&2BV_OI17*QB<(4D M@@+6'5!_#,^89!).C7\A94 V_ M<$M^TN+V&]C:2ZSML951"&:R]6S3!'%-5 MKL'B-3A*_^Z"E<%_?*%FFGDO_F'X8 I.0HS'">O5AS^%8%;/$\EDE19,VB"# MIN5"\[EHPOK:S@@,;%YY._C,3+Q7]!#-*/-P+LPHUZZQG&GW#JWAF$JE%]/= M@C5>OY@66*(KEI+:Y]*+Z1UE,6UN5N+6LIR,M#840_FI1!% M%@KP"W[J3?'9DCNO :EQZYOM_'94BAG2:0_L)6Q$I(;!RF3B.)7T,&AV[QF# MO0Z9,9S&0!,3[7S1P8K4OA'"K\31.$WWHW*NOT_WLSX*":\GAO,$[/:)@2T" MTX8'KGR8I8]G,G&/G!<\ZBA/7XW:?0U6=,>CCN,F,@3O$X-=K)D7&$ '4\R& M"&+0?(!9KM='H1?Y5E>.^<6%Y<;/E.YN#<31B3B]=<1Q4O1)MW>.R1-# M#A"(<,7F]?"@&?+E6\["X?C0YNS-WT,C$LC:CICYN)2]PU.=JP0/Y2G:XMWE MUDARD(*AAW+Y8N:YSY:/*TE!\"-Q['GGD#@KHO)6Y9:"Y^ G#=NVTG] -CH0 M[G57=*%+P6Y5MZBWH@>C_H(Y>G -6';:PV]OO--!5=C75QB"B1HLQ$5W2 M/MB.+*^U#[HH4-K=_&:W"A#$IT/9A#AXYKRDZ$FH"+O!Y[T5N-&PDIX@,BO$$*M\/UBM_$LSM0U+K M^(*9SFA6Y.D4$,L?:R*64[&;__R/OJ[U/OHQ-L:4ZA"U!6;I;!#ER7-]],4" M!D\'A!!8NV$'%CZ'!VZEX+ BWXW\TB^62 WY['K?'0%4V.!O(N5A"]F"!UL# MM=U9$=98G7H399%2JTT;^,,:6[S3)HA:*D M#9^G]/JP_P:=4T1^+\4_N=RRK:D5B#:.*?Q%?)L,!1R)F5R4F^.SQ$EZ<4/; M5(:Q%V72IJ7:/L=M1),'P9:-PJ*9U*$%HR/_[D@E\;[FY!M\@G^L/,ZA*!<0 MB5+I"Y[Q$WH!J/_$=^Z N(_NS4]8BD-?_FU^B]P#/'//V_V(9JD)3#6LH-/4 M!G'B$N^#E#W7%UEQ/*D)A7SR!6P@BO.^O7_@!QHP6#\SV(:7,2',#?V4P6_C!%&$T(DSO-82)UF;Q31!YV; < MRC5,EHGHYSEOV>-"^#47!>D\5)>.:EG!Y*^"R4[]S9>KCI#ITBV;Z7)C>)A" MZ7]C'FGNI307V%=]*?D$?[F@>!/3.%IN=ODO$0?R/NN?K9U M!^1HAF*"7^FP[&[,Y_F(%_'RUM\JWM[XH%(SIK?P66@VW]493[^^CQVRKLUWKVJ,TQ.WUMZ/!429;+\H.VC5O-=R7G89EI^'Z M=!K>"5RKVF55MIE=2P#9:%@BX&B-AH^PZM\,'_R9ET7#/KHPQ>U[-PS ]Z2)6S D\1SQ9ZN:MT:-F.J68_" M4^:$DB6<\CEAPYW;/7-"!SFAI>J=5Y=XE+BL#"YW(J$W)(?L&9==+J';.?UT MI(26G'!0";WA-'[/G-#C$KK;7CZ*K2@N3[3=*L^Z2"HY/#.%4!:TS549LYW=4D MRDY >FYC@N\!93I>]@<7L88]_"2NJR@]MS&H]X%K+ ZA=@:M"DG/TPVI+V7) MB& Z%32C'R_0G'Z&77*"_838]U5+OZ;J9;L8_"I&+,]^.O=L6YWZ]D \?O'Z MXP6!3H>;CAC'WQTW8:^F7EMMZ;W=QHDDMFN-[2.>!>P.VVT1 ^W4_KQ6F(YPF[XR8Z\^VH>NO5CD]EL+W!;8KRX6&I;#T[R">S3TK"[I.PZYM.5?:: M(&_.Y,[X7:_ C>N$EV\OD&D]E-->X,H)K.BX[8&-0G[M[.8G+W/PV7.G>+LL MY'<_[\:+UZBVO-^L=\\NNVI_L*+\SMKRA_DKU9N;V@(=::4]7&FOM[YEASO. MU(I7>47\I?3(H>%;>+\9[SVE(C?I[@:'*XJ[:A^T:NY#'_=!ZZZX4[_52C=U M?CG22JFJF3Y8L=)U57HXAV2*GUF+VJBN'QXT6-A MR$9&B'7C)FS.AS2 .!?12PWEGOD!".6 *A2A]$/J^TF=N=*;LZFORG$VI\7K MCNT,@NUJKI("_V]%X'6JN0WFNO$TE\KJLY45-:5IGSO\)0? M6S^!#__-/#>7Z.W23KG>[%=N%>"H?W5S(EZ+./IV__!=7#=G/U^!C!T5K#7\ M](P0KQF K9.E#?'F]GJUF@Y%"_M9K5"LA52.LJ7*65LRKD2=FK?3@ZFU0)74 M_\IV2K*=4E5C,NL*N& ]5S(I*FQ$:(>/CP"I1RB\7US/])F3DM:]7,6[="A9HD^46&1<^D#'E?QX"=(Y M$1 929D:3H@--$,/^ &KZGD6-AK!O!>;S9 MFN-F)FT:4^144<4]J8@M7D5$8&+<#',<&\J#A:U=\4E3]* )!%6R37^QL1,( MMA^,MV%:MP27>KR@A(J_J"I8'8YJ)Y*%B?=;\%OB">7/T$C:D7IL9C,'*Z>F MB9?LD2 @SC';J!3G".+>!6W"')HMF; P'V,Z4\+90EOPE=,?AQ[5H)O"DT]4 M/MSRP8 &QF&>#US!G>QP-K,!AQ-8%)\W@(\J1)NF4YI [>;99;NG]E82*"E;6W*9:\O2'GR9U-&A/U@1URWA'BLQ ME\P,+P >);R,858HR8"U0;#!+'A++#_TJ->V)Y3^%FC9D(9[$WWM-OJ8,#"L M+;BEC:Y 3^TT\VO[1@W!!&^@K3K#$KE.D+9TZ=Q700VO-S]RF\?+VCPH+^CO MVD>T2[FT<2CMPXCKQO(*Y%A*.&[AF%4/,"@#$9XF,\CJ$6/F-DRY(3]S)]1M M<>IV5S6$0MIDE7RRM)'AP4>]B,QC%Y4:*EH/O&5<+\7EIL4BR^!<1% MY=IE^4U62J0JH^K%0C?'=$W1''T*2/*E_(*P MR>%*R59( ?PM!%&OBY92:,0OLT51%N9Q4=?A?6^&8H&\GK)8(99(MZ;E>^&! M7U6.O""B@UCW@LHE-?N%I$=Y*E/CB=ZJVO!EU*RVEM#@&J#Z1?"A8^C DBQL MR!DWKZ#W0 8F+ML\9;L)X0BV34@-&Z@&/6]EF?:9L@H'O=$1;_*^0H/U"ER_(D3+\RMM=[."_FUBY(3_%&/T96B1L;3NV&E-'E,E!Y\/5M?)@ M>5;H*U?FLT'AO^LY#.PP0+^O_#X=_K=R?@:/G;T'DU>QF6%RO3I*8OS %C9. MCQ0.&TT<6/W37.'=9N#1WQD(4&?>4#Y3T75\C#H?XBSY4:282G85()90]))9 ME]Y;(T8.Z72;&B934$UT>.'M#6BAXK4X/!=3)C8$XIA]#=X':#Z!#/G M$B>F>DM+DYU:M6/Y&?X1WLUD8<)Q]Q2DF\V 1K*5S<35..0Y4\M^A([2 ; M9H%T7H*JE1O&0Y;H9=BG3.\4?]%X"B:6O[ P# TWEGAJFSX$&>Z]Y[U@?IL_ MSF?PMVO8USS),"C8A: "'$OQ\AC\HG5 .,48V+\1QH1,0O5\H2%CNMM1BO)1 M[Z.LEY.+/,XJ44<@R\\<-PHKXFHT @J:46\=?YWQ\)MADXW],&$8E"O:0"%W M!VK31*&C-WK-[>KNKZV>WVX D/=0ZK_5WV[4M9-M-9K];2>TH\GNXYY(F=WJ MM+M'FVK!@O2U*W>]HMXW3)<=U=.26)@=JQAW3 M8A^WKNI WT?,UIRK:Y=YP;C M!NN#<7FN0-[MZ4[S['+07:Y8L^-:K%6Z\2^YYLURC=[<$==H9Y>]Y>JK)\PT M>W093H(1\^VATV3$DC5XE>9*OV578.*AID@8TW\^2! M*ML?P2JX-OR),C/F=#Q[8I7L\U=\7D[^KDAVC.3O-T&ZSZZ7$<6Y8K8%+D1O MN?C2^\+23I8UKB)$-B1REH((9F,0WW9.*P0*J4M]F:>E)M5HR=/]P0"Y"K#5"#VF8.Z.PG_>SI#. M67I%]-4N HH;[.B\.,:C![/C&4'I;@\Y*JH+AO6.@HQ5#"6^7=1L,*U?AQKL ML'?"J#FTO5U=).XB#KO!W'X=$K%-W7+R?EV"KS4UZW<>M:,DVL>"'% U5% T'37J1XD:*FS7B9L4E^=+B M1I/BICZ^7/4BWV_Y2;E9-7I2;E:-GI2;5:,GY6;5Z$FY635ZLD 3/=G5@+H: MM%=W-2A1&ZAW=BE;(/\G$HO73VG!E17 M7ZX!E8RE\,'6UW]:2;=CEXM969F*+SJ/%CJ5A5I+>EWO+Q(_JO=XE91BNAF/ M>:^K3T; [L:IOVC9PR.L!L/+#^&8%Z8QOY@SP[M(]V_HMF!:497!?G0&FMV3 M;4M7_8$UE]A/>-.;N;R 752A"A]\LMVA86,]PV?+Y'5;L4_J*%5B7A1_,A2L MBTQ5J;'6W@B+(BE_,V Z*I4VQ$+#*!UFGN4SY=FP0RHGA6&@SL>5H;!_S>;+ MH; -=0BC%.%']XJ3(=H?YO^.E6;CL-@@1>+VV64[K\Z@9=M$$ES!#,CPDTH< MVO.2M1-W-N=N:LY8(;27,^DIG[0H'4:5.4&M.T\75,9OG)?AYV/=;*H.:=L7 M([P\$V"6!Q^QH?P.2.9%C )K*FJH4B6K5/6Q+ *I0E)2B]>/&D)AU:ZH%%?< M9A\+ #P\@V2*@IA%"@ M 6"#5P!=RXU1SYQEKMS47>V:.IA1?^A/XFMQ!YY/8CIG.=5+N]VSRV:CF7-% M/&F;PU$7+\+" K%SJN3EIBH31A4YJ4:?S=^!6PJ%VX%1&Y%RFUVGN()WI(>Q7,Z3]$ M,XX/RA]77Z]^)VM;\/&#\NGVX?K[PP-Z$%=?/\'_77WYY\/M@W+W.66D@^T. M=GGTS/W-P_U&2.+ !>6AQKCZ$&A/_R(NR! M%83<"B&JV8)JJ<'0G!2VPY09CC W'A@)4(&UWE4D\)+>:?(F ]GWM9N<]V\BBR@9J)T>"-MF&R1Y1P8J-IBMZ,;CKUT0$,8-/27T MXP*JU*(M*ALIRG2K4;E(\>ND\-Q_ MY7T<"[N#KEMZW :<+?[R!?Y%9C)M"%B!XNC%)HU9*0!5>SAL! @& M2D7]BQ7VS >#)T>6-PJGZ%B-DO*@L'IT&/ _: I2@5C^-6!&S^7F*!^6OQ!0 M,RU$U1"M1RP]/L5^/;R,NJ\\H?T=+6$:X/ GS.*$?KSE,YBT)@Z6R MP=SMB-KUY+JB(Q"(+KBX8*=-B6JX]7C*S]T67JD\]DFB0JX>[E 8E20G(O%V M60 M$'9/^&$36((*Q:.O2P(J(4#4%VQJ_:3&U>"1CWBY8!-&MEUJ7I:I"^N# M"9@FZ6+=6(>]Q*.ZXS'#- W^?/3;52-30>:DM+J*M>NM !N7H"MC6CAAHB.P M=R!@8%M :9,ZFD4&)O\8]>)%B2Y<+YPY+\]LC:)>+"]8"AD9792!1NF/YC2* MR/-DNQ#/9S>P-43?:[%/9X(2%KY YN%[T9TL;K,2&#\!YKP$98P6Q\_TJL)G MX&DPE/C27!O8[H?COG!\A0[_&1NC^>(W(Z[&>$5K;&-'LD7A?3VQNUK*VT)' MT<)=B-TT.U)8$Y<<4A*+*/(?0MCY5=\1C/9!.=?>$R, "UB%F"$'VS.86?1 M*GP<"'5GZ*WO(JCB]%*_$+@CM,8-^#XJY_I[_"T8D9&G'2,:HS1A\BSGT;%A MV3@:#LY8D#SMB_K1?M3^#FF$>YKPGN7[L)?^6#A7O%,%B5S:;9A,Z[T0!,;0 MPE9Z^!EW&%!S.N',TV1)$M+OX0MJ.HJ$/G]ZUM@Y$>QEWW7(*:(8 7ZI_7YQ M.2P*ML$F-5/,@F"/Z M,"Q@"WTZ4F3C)'=((>\2I$[ K+P0 MS1334.WS(01H"!&P$8 "F\0==F*,!!)82R"_D(+QSL0 M]TG[.$S\KDIB:%/ MA=FP?,]UZ+>XQ2&\XY*:MAPS1)+2*@;OX=\\\HKT];G9-U?0)P,&P$>TYA*T M*&(UYQ%.VWBA_0!5*EKCBOY(HLNC:00&TOK9&)'Z%_\&DXRXYN->!7=0^*,#&H1V93$):.JAP>+\7MC!U+NG\$47S M,7PK;.448VO+TICO4B**2?2G15O2=U78),Q[MD996Y!//VXG@_TM8RLMK0_G M%'2EF43"-A:#R+M@B)$HP$,)[(U"3PK).4*'A.&]=B11;,*BX8:&YF@"'A/^ M:U?&+'X:9&GLHV5T@ !CTC1C[H/I3M/MI]^QXOZ22:L+A"',#6<9*8N4-8:?ZO@L^6A#U2J9U.%&3F<13<>.658NLE[(E/#';61A$ M6+N>@$#BDND^]'W+N/C^PP-QBNV@4\+DUO<,9E_\MS'%R)'AX1+:6:@EN,Y% MF%1R6.(N.0#[:7K1AHE]D9E WO+R,\Y\6F$SY]D"RP$1@V2DMP0YG]#\ M<7@7O/09%.T#2!KN1_%S*W!.X&\HGGFLXEP' 2.8$/T6WB7+(>%UP>V62,C@ M\D!2VKS1LS"MN?,'L$L%^U,>H3BM C9YJZ7;8#R M#5O;W2H7RBT(+7%7]VKA3 L,S2O'03U^3P%%=)$^@SVF:,V+O\@:K:ARAY7YUO#-3_ "B#/NGM$(82]U"=F[3\["J?0Y M[HH(H*8.4W7MXWOAJ8J I3L%$Q0E'6^:%%M\4=@$U+]'%@B8JA%6IQB#&GE< MX:0\ODB.95W7V*YJ*/_@!^)K$TJF:&J!\@ X\^/UM&V(QX7<2<:Y@5Z"%TG4 M U;)/,"G(H\3)!'9TE$0*]8NB8T&@I2Z#0M?(>TFHG40Q^]@[K=)KTQAUU)( M0<06N>61;J&*BG7->A8R=&S?59Z8P[AM$0TZG O2(*W(36%.''Q%[Y].8DB) M4+!!:%N/QU-B4QKGB]&UV(/^*(]W+_7NZN/=XQS45E.X3-P70",8<@)-,3B- MT0A;JB+F,0*(0H+Z=FK-=R0HL/E+_##E?-EVW Q\6I!J'V'G0PRXA907!^Z*L*\G!MJ9RM!SP5W'DS8> M.(@">9'TS:=@V@U)XGCJYKC?E)ET;5/$+Q&ZX"2!AQ>BK9IZ*Q'&Y+^Z+C]1 M&B+)@/'K@LW[%)/QII:61Z! 723PBFL'4^DFSP.[@_!S*'8]] M%B1T3,X9R!NN"T;OXOZQ\?E>4;AJNJJU>@C7)'$S,D?L.??(?;3MN(/OEOL2 MH/C.4?X6@C"+^_YN/"8!XPO/"RG[,#I;00OKUC%!>/O@%XIC%!,OXKMSSEP< MHBCIA0>=]8<3T1_M,9VQQJ[X5S!@%:T7Y_;EIY F#MC[!N:PY,9Q1 -Y'AJ/ MFV]G&Y]&$:BR&Y>$:SJ;!(B:$A2"X5/AQ@DX"61B9(^%T_F]P@8N?/JLKF4L ME CH E"HV/&Y)Q5_-TX4R>Y:' _.)$<\&1A_1(JR9\3!.+1M2N57GEPP]FE% M6;EH8R"_ANP,9$/7,-("M"U:]UU:K)82I]J@\+OZC@&>NY3V]DO1F\67DF8% MTE#BL%DP>QY6A ,O[JVD@OQ1\+T(1S24KW0H1"O?H!K!LJ>(]"_-AJ91ZK)I MH8-G\MBDNIXZW,C*0B,>;E!V.+TN4:7[)*7_+HZPUX3+K_S-!S 4S^%18,1= MZ&"\-+I9Q-T]6,X%_TFPA^73*<,+NAN4B2BNAI A:D3:,;X,@3X6!;%!DE[$ M$P%YS*^5I,,R/#LU=3HW8?;,CR-%G$=(,)[(<+?Y:$O#/*$O)_XYH5A:-BAG-?H>&35MQO42SP[ M1CJY08@D/_XN^'@O#*UTX8SCY9?QXL9.#"0B!IWHX(5_(-I0%*AB2VEI/'1E MDVLKK!5^CC5%_8T9LO8HY+)WTZ+9"HF^'HA137),RBU"7'$M!]$SPCL3M(?\ MYAH/:Q!Z/9"+U@P%9K) ^#N;!=SUQQE^!U$*_Z(\;^+R*[J"9RCGWQL/X'I< M77U[S^-U_%!FF)PAB?A! E\N(G%B)(DQP)\D2*OQ_@&C M/8*#D\@.D#5)>&0:5'W$^P A;DE=KYK[($B\D--17(3U&[ M\Z[4YJ"Q^/JMJ"W@/Z\DE2K.D46D"%::MBNK&31ZQ#/C3' KSW?,I(ADILO3 M$=+A3#HW ^EN#/&4/XIB\ORB.+Z)&JR OT 3 4Y'H^2K/*!C$PH6%J!5&2>,KB J=X;-FV M(G*H>28_4+[V#+#$^QOP'[(4^($P'/P^)?2C0/-XQCZ/EB,1N;T]CPX(Z'JW M.-1<@)FP4G+YAJ?;I4+C&;1&?)-XF#-*GJ=4J"2?#/ &]C][$4C G!8Z4D[E MYR81_X9R90=@!SU->$H&K0Q'3)Y]X4ZH@"R)!B\N6O!,1MB2K%XM=%.G!3E^ M^))$QX_CF3&E-1C1C74TY"EVP\4W!6PC=A0B1UP1B$1+1+N(02-]%',F6M=N M@@*QM5,\Q@5[<\4A2.K@ ]/[K#&>@O'TA!?*TN9>VO\$"?'$W"?/F$WP6A%06,12*7&*1(R0 M#Q0$!T7"+ZV8F-IHP1?/28BYH8]ITN]S^7>%%NEC]H/XA85RN/1!_N>$!1I-S@:BQISXLOAS M@_ZT4-R7_TW7&IWNZC\W&]J6?VOUVUN]N6ZR_49WT)%SW?E<>XUN;]OY''JN MW4:WW:_)7.N$@7K-5=/J(K, KYU!H5$WU @MT1UA<\L_;>G9G%8%W&#<9XG^ M13,ROT+_8V)O^,H-6A8K.V">+ V^QC96'@D.")U4AX^B9?ZK2,^XD-]"+[/7 M++TX0:;R5@32IZ'CA&:F CR_M!*X=#&M-QXN?$;I431 M+MJ'[$A83.F*["V_B (IV[2^#'&.TK2Q&(F*]VS,6]=!>R\66U"_J6J=;M7: MPDMXG0B\NAVUW^Y)>$EX[65!6EMM-0>UAU<2$"]G1>1"K2);H^M'V9:#K>^= MM)+>CIS1VRVUV95Z3.)K3_CJM]5F1^)+XFL_"SIO-]7!H+D4IZD1M$[11L*B ML6_#/BH=,QO3_ZM$S(R&R2LLG;_P;ZM37+"I2A8RKJL$BRUD'#;CG&R M1^,W(?;RD"'?MQ,RZ6AJ7Y<1.0FO_2RHW5<'K::$EX37?@X4U/Z@_L+K%&.^ MQ\FUDL?B%:#-R4D9K=M7.WK]\V\DOBJ*KUY+[73+1G,EOB2^"IZ_=M1F2Y>G MXA7;E98\%)>'XC+ZOMG)*^M+R.C[&P9+2X*E"D>(K*NVN_)L7,)K7_%% M31WT.C+L6[%M:???2-Q7RI>3EB]::Z#V2V=&5T_(2'Q5%%^#%IC?\E1<-@*7MB),%2"PDGS\47FY=0]_,KWY*'XF\H;-)JJKU>V=2? MZH5.)+RJ"2^]K[9DSH6$U]XNC+?Z92L_50]=IQCW/C,L0? $% M*>\Q2K 4!DM90UV"I;)G+54<0S*/9!X)%@*+/!FOG'22)^-[\&8>7VW&OS)R MLKG5^ZG%5 JNN(*NKS;HJ7KIQD^EEEWQ.)]$:WW0JC<':G?;IL<2K1*M!^X\ MB0?^6NFP:2V 6B;&_0K05F4KN]79Q=/.&I "KCX"KMMNJOW>EI?P:R'E)%I/ M!ZV];E?M;MO_7:)5HO70QF-'[?7+MY.O!5+?F/6H2?.1PJV_!L;09O!?TWJ^ M_"O\3S21J>$]6) M^8KE1(%59>RY4\50GIC[Y!FSB3529LSS9VP46,],>6$>4PQ?&;NV[;[X'Y28 M&*67+O;[ D7PAU8WEQC\5Y9C,B?X<*'UB=D.1Y[__(^^KG=CI7JH#V=)H[4; M'5SW?7J#1D ?=PH;HPP-GYFX@<&$*5?P*V .W-"1Q^@OP[FBZ^]@PSQZ(IAX MC%U,8083W%C+-17#,163I9[7VLGS#LXM^[@/8FXZ,SQX.'#I(=^8,O%GPI+> MU/6&\GGE)U7Z?31'Y06&-#V EZ/,/ M@ F3$>4R (LS+(A-?M-TG"^ Q\FGJ M1@B4< F= !2@BVA3 [XR _C"V ,P3PU3<%/SYI/V% MP3S8#K$8RS.5/T/#P^JU[IC6JB)17IAMXW^3V6_A++MWRW%[:R?, M?O-S9(=FQ"6"TX ]8&A8HP-S]SSFC.8*^SDBI:-X1@"8X@I(S:)Z]4(]ALB& M7XUM8.+#+[.P3$MI5) NAO*]\=!0?K^Z^H9+LOS2,F]9R@&7PX0#@!V\Z8[' M/@O6" G@>C\$DBK,!I'DN4Y:7A073=LN:Z/HPOU:-T<+09*WWHCBRT;,"K)) MZ549Z94I I]EUW:_G!33^[408^M6K)5VR,/!>&GL+[ULQF&<$U#CVJZX"V%QEDA#"^+2YXM##%_"U8N<%2 MBE5&BKEB:T.'>POP*ZS?D37*RHJS>EAEA9:N-4NZG[L1Y45--3\CYXJ98#CG M);<+"%#8D/(324/C[U#63%T_4!P7?;XY)P^;6BCPPE$ D]ML!@F&:.N-'HD+ MUR=1^<%C-OG1'U\L,YB(:%CZ12%RFLDKQM!W[3!8_4I*\N"-'>8=*)*G\[(8 M61JD_W?B15.8&4_L8@B[]N/"&,,,/QCVBS'WSW[-2ET0L N$6UPS7]GE7X<> MO)KSX7RR'#XLR&4_H- %88"[&((:\/ I;-N#N/N#%,HF#521&.DR*>"B2E6P*8H*HWT8(MWX5YA0^3NJ:!M) PHT#_"9NEC]H/XA84X/WV0_UDPUJ#?Z/;;R%LBVUE\6+!=@]AN MX5B"_TW7&OVNOO+/S8:VY=]:@^U&73?9?J.O=^1<=S[77J/5;M=DKEU0*-O. M1V+@-.9:,[QV6X5&W7!;I<0MF0IDI#%!%&*5%TF W+K>=2&(5(-:[XL1Z*R2IH!R30NRM\:448J\5 M8@O5W?63+6;Q>^K$018Q M?CM50+6VKO9ZLHJQQ->>\-715;TUD/B2^-K+@LX':KO;D46,*[8KY>_AU?.V MG90N)RU=VMVNJ@VVO,I>(1DC\55-?'7 .FIM6Q5.XDOB:Y,>[H/\:LL>#U7; MEBWJ%-33/I(]'F2/A]<0M2=[Q3$D\TCFD6"1:KF: MTNGH/1YJ6W0L??:==T8H])E6#]@ MX>XP#DJ#IRHIY-\E+CKEN#Q-=%?6GF;39@3+P';+E8]$F9P7RM M<.HK,\,BB@P]]P?>+XZH,0N]T03KOL#TD'*N0S6BZ&(RWD#TJ:3#D^T.P?OR MP]D,U@LOP-^Q%D3@P4^!']],]-C,9H[E3[ T PZ9+(!NUB9%N8!B>"^3%YV8 M\[()2*6IX81C^"'T\!YE7]=Z'V'RM@'#P3=O'1,FR.^?*W\+'1;5Y]IXT;$2 MG+'NWNT=P,:@JA$W/V<,Z.[78DF%;M^Z\=J86)N\@UMP'P][XQ94Y95;>>567KE]NU?5FO*VVMN[@"5OJ\DKMRVM\*868 MO'(K+U]6_7ORRFT5=D%>N5WG#$O?08A M[YV\G;SMEJYV^DUY+4#":S_P:JF#CKSS+>&UGP6=:VJK)R^=5&U7#KXC1[IS M(J7+24L7K=E6>TUY)U?B:U_X NMH("N62'SM9T&]9K_VV#I%^^@XM_"/9"/) M>[GR7NYKB*J5M;_D!: W#):N!$L5;FF=ZAB2>23S2+#P:JX2+%633D>_EWN* M9^58>,V3FN+*D_.W%UWIZVI+!HEJ5ZN_$7Z*9E+G+9E)\A!='J*_AJAM6453@J4HZ4K' M!218*GLL4\4Q3IMYRH9O)/.\8;"4=2TD6&HAX>0A^L*V?\$:TN<>&[DPE?E[ M9>RY4RIW+(/!;R>8MU5EN MG6+\]UP;'+P9MSPDKP!M3E&^Z-(NJL!&G!RR]*:J#V3U'0FO?3ET';4C>SY7 M;ELT739]EN?B,@!?A%6*,XJ,O;]=G,ASFDJA>_!@WDDTWVY\^LQ0K[%VA2<4DREX(HKZ/EJFJYJK2WO4A7N1U'E.)]$ M:[W0JI>N*"31*M%ZE)!I;U Z8EH+D):);[\"L!79QO_\C[ZNZ1\K)G1..VM MBKGZB+E6NZ_J^I8'PK60=Q*M)X36;E-MM[MZJSBS*Q0B965(%A2A*U(ZOV2[ 4!HNL)5V)([=3'4,RCV0>"1:J R35 M[V9KM6;Y MO=6S;>T_+;:UOTFUM;]93+ X^CH+KLI<7!5+K>K\_M-_&M/9QYOW<08)O##R MF.$S4QG.E5^H-[(*4U05UU/:[U1E#/\-)@S^SV/L8@I3F2@S&,XU:7C+2;_> M:_;CE[74RP[../NN#TBL@WIDS\V8=Q%;VIZPWE,PP!0F&R- G\ M^M*XOHH_^*[C,/O"8[81,(2\'_BIF<*W#7#7_- .T'V;,,,< ?H#!>$>6*[C MXY3\<#9SO4!QV(LR\UPS' 4P!OR=VC?X]'U< I#1P)?B#_CX^+-E\I6QZ M_A;\&<"%'2PRJX\!-2ZW8O$1/._+]\&F^$"X;G8,BI 9]5C"?# M7)-6 )=>%7P8<)U0B3LTQ80004^"YHO7=$0*W[ M+A<"*XC+V:BE(MR1GK!M]EQ=Y#X;%@=<@^[*?E4RZ<>(@S)+PMF ]&=-QGWFHES<( 9Q*&/E'AA=DV M_C?U7EI@1C( B6(#@@#S@!87>!:XY=:)!88* ^':?0N70-P]M&PKF./ QF@$ M<$7NY;MF 6%IE=X/QH=.S8^F,H3!0"J@683_Q/$B,(">?A';3>P76+3"F>O3 M1"(>3I $= 'X6+#9Q$W QM%00D)P*0X2C:@YFH]LMH:/!(S;>J.'?!1]]P/) M6IC)QQ?+#";"D$J_R V[#\WD%6/HNW88K'XEQ:2X&.8=*+9)+*H/LC1(_^_$ MBZ8P PI?#$%<_K@PQC###X;]8LS]LU^SP@CFAE8A3HZG3_\3E+N*F5>9>TCZJ 16TB#LN85+RT=O]_9 MC845S3IOTF9(LHI;4)$])4029L[HS8\W( V?4'1<"]%(O]<^PM=L&BLRF50< MUP[1HX@%)PBXV&11%2 DB*1X'IS(?!B3P>(XI='8^#.TR,8E'60;H3.:X,2X MS11]$";Z8GBP5%P[@Z% J>*22<1Z+N@4;G3 6D>3R"SCGP.RCOC*(WFOO$Q< M$J61I+/G)+?AF3&(5M>;*T8(C_()XL0G!JH>EQLI8+B6?X M[A2^#_NG/%L^RO":\,1W9P$09TM0.,L!04G[D%0KF'8NT!-H"M\'#;O*QN=& M/;<*+* 6+)77C=NUH0YZU@/2H34# RZQ!VWQ"$#*51V.](<+K[.?8.%Z8%+P MB9Q[;,Q-GJ\N6 ?:@$Z3)MR4P.- ;O%;#AB_:"3Y ?P"8>^_!U!Y 9("+2[/ M&H:I+R?KPU_0X=02C]<%9(LNR>H5<3L9-PX^"OM>UF\!"Y:+ X .0!2="L#> MQ +1P.46BV01F;:^3XZB$-)BY*'KA"2XA-SD7\XQN$[4Z2EI*? 2C_?9$H^? MTR4>C[ZBM?._ZIPCU*[27FEO8^^D$1SSJ@@,$#:.R&JC-!C'NVX M9S'89]#85-Y2 4?* G$RLW&O04O?.J8+;KIED''/GS'!7/= 6N%+/BS?&H.S M@!&,*3G_($:N77#X?UZX+PY)1\?G 0"T]!W05A;+.D#($_ 5^F+\A,+?!A82 M0BEG >3X$>O!G. ;<9""3R#V:VCR\-0+?,QQ,Y,VC2FZO$)Z)=P@7EU0^ _( M;O0DBL=(8B)5,O0'=0&K<\'',KG3N&8)+BD.M(WB+ZJ)%PI2US')CH!O16[D MGZ 2P+_C)HK'9C8#0W"2(5ZR1X* .$>^A^DYDFX;,K!%<+:HNW ^(-N4< :C MITVEE=./E %XW-834L6S_!\@A4 F>3YP!;?^P)D%N3B:P*)$;/#G#/^3HO/( M #\1UE4AF;*6 V\=8498GHE[X@7H?X^7V5'!0K*>20QCH]B!AWZA&I!H3J?, MA04M;J+0!8N?S!IX9VS]C*T-^*>)UC]J7R(>.:F)1^V05?B">O\"M1&Q1>SG MFPQ4.7V'#$4#K,E &(D86U>>#3LD>/^;>>YBS#*!TQH*M%92(*JJN[A:DBV< M,KU.DR@CYCQBS$039\0 4V;:1#+2!@H+ ILL%!XR 3*E*(%T<0FGN /: 8*5?FB[SR1D!@6N-K!F^GR*= 3)?-HALH8 W2/8 M*F;6@WC\ZR;"G&R[#Z%C,@^?.KO\ZCH7R?W96P?T'3CL(@KQOA;+(V,8^,H& MJY+4!(D)8#D2+"(LZF36:8EU"B/WO7)NH;AP0YB%B4Y$\4@RL!(PJL E/Q%. M@S/S!YW;0XG>-6'2AD'O<,8L^M0F$!\_'7P$W2* MPI"4=#G""WGVN_O>U\#CW77D-OM6HRUVZCV^[O8:ZM?KLV>'WK<]T77O M-^2RETBNV9P\IBT]FY,>QGV+0Z;\]_(KD226@J_%2?66R%)!>68%&)OC2^E$'NM$#N@ 3?83,::4/(\=(S0 MM )F+MV#WK=&.+0E?:"-E[M>W5T_V4*CGUT/_NDH="[GC.8*YIXHYWA>5V2' M99N6;=95PQ]^(TT-66VUU>Q)91]^(TT,6=MPL M7YZP0L@Z1;M(T[=LRU%/NZC.Q2'7+O.6KL[SQ&O*MMU'\: R5#H)T9JWK@IB MO(T72(Y2'DNBZ_31I:GMTMUP)+HDN@H&9M1VKU-[=!4R#:M7@W'MSNCMX^Q+ MQ4-F4L[44LYHNMKI':=1JX37Z<.KK;;Z9?N]2'1)=!5;4%_5^LJF[*+NUKA^;WBH?-I(2IIX3I]&LO822VJHFM\W9'YC >?QM. M#E?]9OUEUHE:10?G][K$R>J29_9(5<_7EW<\QK'J&^HW7V[%%625\Y;:;95H M-U]JP14_09,XK1%.N[V^1*E$:<51JJN#3HD;.W7":9D3XU=@MB([V6YM>9:\ MM[VL>$Q12KDW(^5::E/?\HI#+22=Q.KI8/6\K4N[4:*TXBAMJ>WVEAFKM<#J MV[(=S_O-;G5DSC&CKK]2SY3+-]PSNM64/:.+]C%:ZDHV7BP]*)J$83LRJD9' MC;VPA= O5(0E[DY6L($1[W?6>8=]%/-Q86@BU027JQ^WC%.K<+!I>\_YQ MV#PUV_N7MWC&=GI);^8%JOG418N&MHRA9$?8@%H^F\QQ@1]IWE8\HX5F M:=2T+G1&4:_&:-IB\6*7XY:RO"OU]\9#0_E$W;&HI39SG78S/X!7;>Y4=AHD,P<@G=;4W& MH%L<>4/$^. ]?WF_=&H7MM0E_3'36)GW&HYQ)MK]BN[4/^Z9QG>9[UBKT]^1?.=[*IJ4TS?%:2GO28%&)OC2^E$)-=$65_O*I_3W9%K,(N5+TKXM0R39L=4N.*XY APS/I M]"$"6S@<3_Z.LXZ)(7KMKSE+>%437JV!VBI=_EG"2\*K:"4 '? EFP%5 M;5M:LFJ5E"\G(%\TO:D.!F4K)E=/R$A\511? TUM=R6^)+[VI(A[3;7=JW5Q MM-.TCP[>&?68-ZGV7[_J:#&TUT;-7GE/]N3D:MZZ*@CROMH\4K\&B:[31U=' M;77KW\I.HJN:Z-+5WK854"J$KD)F85&D561G.L?9EHJ'SJ28J:68T?KJ0':R MD_#:U\&BINJ=IH27A-?>#A;U;HE3K.I!ZQ0MI//6X-!;4I? 65T:)-Z,Q[RP M0#KQS#."O62=G6+PN%56Z]4Z@"R!L-K"/LZYX8D 08YQNHQ1-C0O&4,"00+A MU,987\4S6_6G#_2N7NDG467L/_^CKVN]C[["8MLY,IJIQERK^8ZJ+FG==SNJ M(*FUET?TC6E.';E-19LJ3=^H )YB\;I4.?2EDGI(CL E.N?15Q1L3.KGQ:4; MXX)\%FSDB(HSFI8/'PU$U:Z 3?T&WV=1U,U0'!9DGQHRAXVM(%-;=-4DX@IN M*TIQ+@T>E8_;.&8K72#0 R(YRA"'#D(/-_5BYKG/ED\5*4W<4"J!22@RTK]2 MJ$PN7ZN)E35QW50S$Z?#_*CXH $/FB&5G\0)N*&G "-3?3+^-&[/QIIAE89? M#MP\JA>*.Q7$S =KX 76UI2:1#(78\B#KW_I4B&M_XOU9VB95C"GJ5\;,PO[ MP=TS'S9ZQ/S*K6)S*<@)2.*)Y0>NAS8!,,D0R]U163J \Q/P,.TPK_T,>SXR M_(DRMMT7+B5$&SS7\:.:JCC@."3$8QW5I$^>@:#A-5V1>+P,) WG,:"JQQ+6 MPS%B:60YQ(JC43@-.0_22_C<=P91OC%D0UZM-+3"N6UI!9LF'V=5*TJLE:K*2K8 8("40 M.J#Z;)@$KS^L1#7)>?'2@=KK4/W2AG)E8RW)ITE&HP3SF4#YQ+7-[+9PF*T< M/W0"RP9@V[:"18P9:2?8^SG*/+'A8(98F3K#6&!8@)LTA\_@]<7U(1X8+"W! M@<.8"=BR<. Y?PD&]5EFOE@5F>9(U:UG'L.BN3352"?NMTIT5E?SR7/N!/\" ML;VXS@T$1O#'&A_,91])EWJ2,Y,Q X7]$Q1Z %:?\DNOQY,VS[ZH MJ:V6GGYU#!(<--3"NZ(D,9;HAF?B(BI]45TTKLYM%M'J%:H$VN]$I?'*%@+M M]!K-]G8E.]?_K=WO[KRHGM9KM/7M:O4=?K(ZO-@=[&6RA0MAYGBO$>0<%VL2 M[^])<704/2(T28L&SF--_^DW ))KGH]*;?@Z$_*+3CZD[(W M&.\-ILG>8().-,X'C%]:HP*4N\N)X]4D#O65!3QD2+%^#"\,Y_EQR< %G1ES'M.9 M&B9%&8>A99M*.*. CQ.XWERQV3.SL4$1MCVR;86"8LA %)1UIW@6M0]B1D>Q>TQ0C(:>2&+SV(JU#^G)%1Y%ZS3@:J5LYX$JKJF MJ;UNORA6\XB#2+)#DYJVN2,,/B9'@*E8-@]/VR*JG8UH8\2_8-!QQ1P,VW>3 MB8S$T0J=\YD6S('%)PSQTK6NVNSJQ59.LT^X+CD41%YUL7T9QWXF(#P,?3P! M\!5_[N.99_H4,!O!YG0A\ODPT:GAA&-8') ..R#!F J&@6>+1XD.>\&7\,00 M.P'RG_AI"O7!PV->#%7C22P@@H=>Z\N9GWD@N=:<"0*>0#7.64M*@<0-\XHP M94UH<.<*#&JUXW%\]Q?G.QQR5PU"?+8R/06\#683 !&8!1?-X",HZ9 M4^>W)C5[XZTTQPNC@58#<94I=,%T^1R M!Q@K^4ZB!WDL?PXJSU],-(@>-A5-[?9XUU%_8GA12T C&1V$4B?U]Y0N30_# MMU9+M;E,)3G0T>H M[6ZI(W0\K$SA0JQ@&7\D/4-4Z7%"B,E(S<,D\"10><:VJ_P4'+6HBPS+30-X M!/@'EOD4=WWE!_&+Z4K@@])9*-HQ#+C"G3/&0:<8V(D77N'_HL:Z*I^M8CP; MELU[SXJR:K2QGX-'^#Y:!@,@ 2,,>LY7H;!J<$ ?>\'Z J9:DVC,_U'38DQM8W+3PX F#FQ(5 M,A=*IP[F""*3C6S*.J..C88EM@B6!?:R8_+6L\U&L]=$=(E]C70PN4$JGDJ[ MCBFZO:;/C/U44VAD.J3V+ZVNJC<'/*W@,\=M\K47"YRQ(4M-*^!M)7FVFC"# M-XM7F D-Q3D!V< /0=((^",/XAC\39,)6Y0]&]BRH[;:6^@986JK>X6;#QD]4"?#K MC7+B=3\5@@+:_.KR#LNC.%W.#0/;F%,+7N$/H[KS19]>_T/1U8K3Z0N\EOFA MU8 MCQC! ')XJ"=XZ_81L<'?#)B.2O@ >E%D'DP+8#">[@:C(=MW/K:;"F@0FSZ. MSV;SJG10NU/^9[ GT:2%'T8VZ!<@C$FIZ:X'-(,O_.0]EBF#V%>C-$_;OB"\ MIBP8;G%%?)X)P:#YE0HX8:I@9')3JE[*/LY/\"IL'$G<;X_[+N)>&ZS!_6K0 M/X#^,H;P5D-5O@1F Q&?ACC80C-D 0]=F L..9'0[[OCX"6R_F!78)-(9P)8 M 78&N*IS'P TC!SVOP,R#0ZVR.-R?/S.ZK3*.%X9WPF(H^\4WFB#$\4]-1YC M?")-%;43CZ*.W#_A6FRL_&!@G!DV_HMB"ZA2>5*V"-!CVBE/=V3>%-](WJ?9 M)TK1YX$)R1*58(G/ D#>SFRG#?7E2KH'F+OSC M3(2CP:U'?Q ->SHVBB%'QK\'5C[>3^'/ KJY'J#44Q[',#"D),:$]R?LL$S=R?4Y R(F[ZY MP>U?.YQ1-)M(>R5YT]; MYO]W!IINI(U[K4%W9+;;+:T_')GZL#UH:_W^8-1K=?Z?UFR=;=S5L[7 7/O. M8?!Z^WCS!X^;M#XH__/]ZNOC[>/5X^W_WBA77S_A+[Y$__YT^W#]Y>[A^_W- M@W+UV]WW1^6/J_N_WSPJ][%3\%FRM._0E&->+$KYWS_'DE/\7W:_$+4C&ZK#L7V4ZI8?DQ7B2\#/@-'>PP9R+,;OBJY2UL'^VX M"P_11Q?=AUCF1;E$[-E%"YTPAQ..DHV*19XKP)=<[K]P!T)PFHBG)RZ3A3:S MPX,IN D\>I$8$AR"G*3H9XR >Q&BJ3!%%)]8?9[-WXV4#EA$!FT,LC2&?N@F MJ>\ZQM#&FZH_,%(9N,O/+QZ5%9Z[=%4N6ZW5KDH9#3TXJX*#WJ_E&Y MO?V@W#W^]\V]Z M6"W_:X#*#7UE9(/ZB Y3G_@!#>;8XMF\.(%'"01&!6848-A9V,H.^( D>T*/ M9UG%V:@&91$4HLQ$A/BM_RB; !:+1SQQWO"4Q[9P>'(, MC,0E,$PLF1&I>9PR!I>674LU"0B1&,_U,K?W!;3.:7'*58,<1.7SU?7CW7U= MN.0S13=LBZ>V1=DN!# OFT*S9QK2$7\H.9#(Q,IY4H\"H#ZC/%(/+J:T4?1 M8 Q]"F''V?=@SO P#7U4_W@+EEM$[X4 1SRM*\<)J2@0&@<([RB8\_=4&I(_ M@D'-_\TEYN/IR\Z#,_ ME8>;Z^_WMX^W-]S%_?YP@W\42J,H+QP\K8?G7I"9RZM_L("B^.@0.&,4_[GQ M\R2WD/RXQ/T!0"8'ITM)ARF+.J=:VFKCNFAJR-FABY@,!HU.5]NFB$FKU^AK MK=V7&]$:@[U4\.BTMBMBW*!.^0(G8TR+.%

A: [W4_PE?/E%BHG3^:K))&/B/$)U;6G_"]F_V4YEU=G+R1[5YV]6YV.VNY6 %BG8']H ML0%R%3Z%/A"B5]@$J8T8:O;ZOK>2GA*@1]41<46"O5.U MWFH@$OO]6!'$-[%.3Q&(@SG):)*BDJ*2HE(1+!VXO)G XT [O@,I(Q.G%9GH M=!K-3IT@)=F[.GLAV;OJ[%W4J3Q,X'%E??8BE18.FKUVKKVO4!');VN*7=*C M6..&DCF3\HVR=&$]2Q<6S'_5M9/*?VTUE$\WGZ^^?WE\4+Y_N_NJ/-Q\O;V[ M3^6]ELKW%O58]#9=DSFHY/CJ.GF=\HIN:_NDMK7=4/ZX_7JC/%Q]OGG\9_KF M=WVV,\ 28#;L':BN5VQL[Z0VMM,H^)\#:VS,T+Z^$)K=@'*!G_CK[]F/GFI;C^'1V_J!(6GT#^[Q)(ZEF/D MS (I.W5-:VQ1;_4\-6UX'M*/ER3S<,,N-CV&6T37O/'#_(Y::L?PXHS2;O9Q M-^[9$S9R1AOGX>+O[Y>%1B'TOYV;M>V=W*QM-8]\LS8:#<@PN@""8G':#WXX M!8&](\'5+5@3+NWH'4,[=!O*S?_]]^UOMX^%]/R1[M;TFKUM[M8,&MWF=E=K M-MW4V/V%G7ZOT>X6NP"RX21@:(Q^/(%GY)@7 D6C$6/C<28XT"/>*1QDV]EQ M0;] CB?C8D-N$DT?R#G%Y\ZN[SY.;&&5J"(:QN;,^,W4J- RGRY,4IOSYC^ M7R6VIVBLJJ%M1?J%E6Y%^AQJ%3[OVEM1A3PRK8/Q7XU<%<0XNC\>:5H*V,Y@ M_4V"8.9_^/77EY>7!LRN\>0^_WKEC29@R?B_,O/)\'XUC<#XM=\!;=+Y%::H M:9U>1V_I+?A1;W5_-3JM3K/3:;?^'_O9TAJ38'IV>37E=CB&@^Z9'U"$Y;?Y MA6V\4'CGVGUR%BM*)^5WHD02D4=R;CDC\2",@L5?L$46!L[&\#/6ZPI<)9(5 M@-;E4J776-L%;,6%N]']B[]38[NQA6URXB),#S?7^(B8A;A7\?ZOOQJ+%D;= MY7-1 :!M*0'V('RE!-BY!# TX&- ./AO?_X44VII@I&OD:Y8%C@J2/;-PXHA M,\/.*>_[(KC:JARM88N=>X;XSA](\]-8[37ZOCM+[RO?'0N&X VW6:9$J* &SFL0=&IXK*H-F- M8\:&-S0#AJ'1+P6WE_WZ[_Z(\&C]=QYW.044$S*'J;0^C"9L:RB=W%.+)U%_* M5)C81AY5!CG75U]J*;8K@YQKPQY%1Y-?+.<'MH;:%8YJ)(&^7/TF)=!KEH0Z7/'6)*)J/<6EQ0-X'XZ%#KQ$XR7WTE8EA[^6:/H6 MJ<*GDZ/;:>C-W=<];\&+K>W2>]<.VV@V.WL8M=?J[WS4CMYHZ_HN2[]75"># M;\ ^%+!;*KZ,J#!6:U-EK*U7M,M+[8MYW*MJX^1=9(]7TJW+WES?_?[UYO^4 MZ[O[;W?WV1MT*?Y9,.5:7 [OJEY[M1[=?;>(UY6NKP7>:R.+?IN?@$#]U?]5 MN4>1&BA_:RC_L&R;!<$V)?XEB%^]Z#)%2ZJ&(XFA:F"HXC#!8S)JFYEJ1KV4 M*RBA(Z&SO.3S-=FEN6<1"Y:FUI&FIF23>F+_9$S-;T9H*Y\:RJ-K/DV,J93T MTM L:T%(!%4 014'R0-S+-=3_A=L R4Q.=VQ2(EG*>MS*4E>(DHB:JWUN828 M'.MS967056>>%3KX/NX9=W?U&?>O0]>"TR,#(S,3 P,2YX)5 "H0N M,?=04S45BT1W _TU@$8W /[QC]DD!"^(<4S)>:?_H=Z_+AZ_@2OJ11-$!+AD" KD@U-X GL'O<]S]V3_M'7O?X MZ'/_T^?@"!WW@_>C,V_XZ>CCB7_<[9WT@N[Q\6F_>_+QV.M^^HR\7A^=?NSU M/,UTQL^X-T83"&33"#^;\?/.6(CIV<'!Z^OKA]>C#Y2-#@Y[O?[!O^Z^/>FB MG:1LB,E?"Z5G0Q:FY8\.U.LAY"@M[HW(;*&X1T<$S>0_DP/5V+X4DI95G/ * MWIAP 8F7\?8%ZXKY%/%^.9%\?Z#>*T&];J_?/>P;I';*PV[OJ'LD*:$0# \C M@6XD=%LNKERV\ M*+#P9$J9 ,0@#" ?Z@IS)C19!\3 ?J,>%-I>54DNB^JV&>4/4"BX^M55OS[, MN-\YJ"\UXMT1A%,GR46:6'KRQ*4&!2OMGYZ>'LR4V977H-22=/FN^K/;/Y3@ M.HBM,LGZLN6O;DJWC3KD71F197?Y3(A(10H>G5D^39=(I)0.,'\I'J/6=I%WI$03J'&?-CR3BE M_SF#S&,TM QJ!U-&IX@)C'AQ;M4,Q@P%YQTUPW;3*>//$ X_R)JD10P!B^. M>GT@25#X+6])2JOZP'F'2P!"%.NFR0V?,N3:<$G"Y6RM@?Y_WWX/AJ[MER1> M%/YG--]'@6OS)0DF>(W6*^IG^1Y@_[QS2>72X &.9.W4\Q^/MU5NG1::%T]Y MIESSZGSIZ?_ZH)NO);I 4P)%^L?!,L$2JX@C_YY\T7\O&WE"G!190;AD';7I M%M5:2I8\3/6X4KN$TQ#[:AWU)!NAW6M.@WMI&[IJO*[:K7RL>!Q*$#):#4C. M,W_! 0U SG:/57!))[)A8T0X?D&WQ3.T/ M4+J*8HP$EC7?.JB+W*T('V^&,'BW(._WEB)^ 4.U,'T:(R36&%P7R:V8?5R% M6<(+Q,SV> B^87];PGKANY*SL:*UV>'T5!R!9IM MVY&BP=-8FNZ8ACYB_/KO"(OY!HB5LK,B=U(+.05">;@1NBT?6IV@R@6PN(< C@@/9?"(&G@Z78C)ZD#KT,*HYO-;D90.SWU,K M=,R]D/*((85LS%C#E[,&.6^0,F\1<>B"99%8\^LMX2!Y@ MD4F+]'X#,?LG#"-TAZ#2AX/NRTFM^C] "5T M5NT;J]F$"2AP:9'JGP3U_KJ0;IVOLG>(<%V?ZYGZLV9">34+*R#&\E;SZVJ& MH,@1)"S;ALXCFD;,&TM]/# Z8G#B (M):\7#6-%J1B#G!!)6+<(ASF4_PUG] M)6Q.8-5XR1)6I\XU>8NT_!.ITQK('[P@!D=(A^KKNJ>EI%;-&ROI8Q^!XH54+Q:!,(C4FZ@ M)R(F7?++L3K@4K,CE%):03#6R ML0,*G10 \14.._HYD ZY?ZB\(#"JKXHT5 M'W\VE@_UDY/@7?I7FS+,I4FO9S@,ZR*X MBH$5KKJY,_ NYM@F9*S9+Q>4ZC*S(K9N0JV-"!9272Y8F6165%9EV=JH^3@3 MYJ+T!0JKOBM2;VU4=9H:);:4")15*3R[6BKCMSCU5CD5M%80C-!@D@UO^THE5L--),<,="?93J*)?O0 YVIT M**3J?A ?L>3^1#**Z=: ;E-15J2-8&.&="P:)++CYR"1OI"4U/)!5H%LYT0+ M[2/=Q>"$]#*1%3,C#)EOGFBASI=W0#C.4.7$5@R,V%_)_HD]&*D^_^QO!,>? M_3T@V]O1$FMA[1TM";D5$",<6KZC)6;7)DBJ#Y6[K;VL;*P0F8')%4?46]E] M2C>+UV-EQW5#V"IGN. QZR8ZPS0&M M*\&*<]V=9UU0$ D2F2 3"K34O06D^E)? ?.C.,)9\AJ3PBV9-YA .?3!\(%R M7:DL4+^YG6RW'A9K^MBK>06&RC@E%8MCK*6%,%F\XC.K'T@K^+ZX,V)O>^G8 M$ 32#U4SZAHK%2>.5GLPHFS5HTLFHLUN=*GV2Q^JO(7*6&P.;BWV5J2-4%XE MTN4OWNM,#'BGA/[>2NS-K6#4CSR=]WI"[ 5[CLNX+79?G[T5:R/(5HYUT:G/).H]/+',Y Z8/?2ZGP6(2:TD M;P9JGX#:N+ 9XA:N5J!++HPI SH5D[U.!;42W)4GF=:+XKFQM,)J7D=C.R;5 M]KC>2@#RRV=4J?NIGDS7Z< ;2[$B;\3W:B!?O/I&WQ$8R]YW\DJHE@[(#3B/ M)EIG_(%_.U9S]:K9#.UDN^[V$W-. M8J"=0 M%551P+RJ"WN#E\R3@Z3">_,T1I+,#]1G_+"G/],D"7Y(^6Y.YA;D6 W)_5#O MHNN9"T\,1(O?FT4U7 ^(Z:69=-=_E874%&DU%N=KAI>,I5"/O>$X&\[U9!K2 M.4))M$:?Y!XN4ZFEH*?_4@.#7D?\&_E2\9C*HS6NQG:WKDH65C,P0J!5EVRW$I_" M[=F.VR<-.BL2)1OU\LNW6ZG]TEL\+O.:T:"TA!-2&\JPHFKN]JNX3$0=T\FD MJG&R\M:1O27$FE@O4%6/E157(^Y8C6N[XU)EE[&['?A8P< *DQ%'K+S4O97@ ME%W'XQC0KV9@!<<(]55]P\,[_5<'P"'7>TW/ M.]*H40<0.$%JQY19DN!0GZQ-2\Z&+,1G4[TZ4G4[[_@1TQ7H "XA$5A$ZM=7 M1J/I>2H<5#9!C8QJ2].-'!$OH8"R M\G0Z5A=[Y0T)8,BSEE03N+0G?C>$H0IHR!=HB$7-5L9/)I1(DV3S&DW\'BE] MWP>:(_^)Q1B3=!W[0*>)H54VN"ZYO?F8J)W);NW$1* 18C6:F:T^KF=P@HFN MU?\@R.(3D86']V(L?Q.A;PJH;/:Z[+9NU?$3%?$BHQIJ>$*A[.&CKXA(ARP< M$'_@RYIBU49]\GYE-ZU)W(B>*X<4ILZ6WI*2 --5A)[I(WK!OB:4R9>$9L,E WJ)"1^G/AF^@5ZEJ'54.ULK2O178+N3XD MEY%\1KSY]_(ZA&#RH> M&)I(@[(HS$:UNZ;5;YGT^?50>"\[RS,M>/H7]WN?B!C=UKY6JX$'V>@OLFW)M@EG8SO(^ MHYFX"&5;*LW!@<,NN[A(Q=19+LRF.)83>^GWQ:UG"J+J18"=VGA+562SK M;(6Q-AFHJRE&NNS%O% FN>]HH*!+=K-=SQ#S,%?-D%U:=C*.O=5^VDYE-G72 M3B(*2R:P>M!83=.(2=#8@7 'Y4\YN/56-\U.UXCFJ5CGC%OM]1"^P11C[@I-+R>(]7;2KY46Z/$DC;=6+VFW*:&Z(@&,HJQY&OLXG2B?1XD57 MEF_$L%'F[1VM@V2713MH#P.# LP G'R1-J^PF-:G?>H%9G@TPO=\JYS<_J)SG['G?IIU= M2WUKK:HP)^3C,K^J.K&[BJ:I_I6<]A!78;'[(:$J4CHW(Y M$,&4W4$"X[&TN@MNQ'3;&TP*:I%,E >Y9;U<7M]O116:SVZVUTC'"-59UX(EOLJ06@2B3$WQ%SZ2:3$W@=Q0ML<+_/15+K)<3XCMIG$.T'^=U1M@#N3U]2A>C"=ACB^5.!IBCP< M8"\-[CS14 NS!4T<.#0C$%'G@@@YM,0#CIZ ^>(K,4=B>;>Y[%>%J_*<=K)O M7_C;>Y5/:EN2K'S)M;*6 R-VPD9841YUN"_[Y/M@X3.5-;=S;<2S,4E\EVDI MVR6>;!K'+SO)4-80T] )\!N&0QQB,=<^D(>8D.;Y#&?IEQ!6A,KLE.NW>;<> MYK/:7A&QN0[BY(FR> H>>+)'2/'5>V3K4;]UH&=P"TR,#(S,3 P,5]C M86PN>&ULY7U9CR9.O.._&L^FO3_G? MV=,G.$VS/)Y^_O7IIX^OP3W]CW_^[6__^!\ __G;^[=/7L[2\1%.%T]>S#$L M,#_Y-EX9_C;^&)^\F85%F\R. ?R[_[,7LRX_Y^//AXHE@0IZ] M[>RW\U]2\;(P9%"""Z!XUN"Y3*"DY<86B8J7__7YEQ2-U"XK8(X54,IS<%HE M,!83X^@U8VGYH9/Q]*]?ZC\Q=/B$AC?MEB]_?7JX6'SYY=FS;]^^_?U[G$_^ M/IM_?B88D\_.WOWT].W?K[W_FUR^FWOOGRU_>_[6;GS3&^EC^;/__./MAW2( M1P'&TVX1IJD^H!O_TBU_^':6PF(I]7MQ/;GU'?45G+T-ZH^ "Y#\[]^[_/2? M?WORY$0<\]D$WV-Y4K]^>O_FRB/3[/,4O].7HV?UU\]>S*;=;#+.5;L?%O1O M57S-*5-TVJGF;SL[^< MA(B3Y4]'QQU\#N'+Z$]DSFX$.)O2/,;3][W,7S'[M7WQ3S,YF0TPOS'&Q)[]^>,?CM=D%;H M,9_?3!YV11GS[YAM7ZG1K7D[&%>;I&YJL3^_0=S[KCHZ/E9\*8@)S]?:&AM.+@ M8C9,_9_PE>30AM $]-7W+SCM\#><8AD3F,1C5 :AV$)"8O2="YG %"5]L(1) MEU[(> W*.D02%T2"1\6D[03?F 7]T%J7'+V-'J36#!3:!-XH \%X)1)3@AM\ MK&;MX9(^A5 _\)Q&TM0X+7GP3G-2N20:!43@41038LHFMYYK-\ 8DL$>"A]7 M)^VVVFLV85_3X,>?IR^.YW/*2'Y\G(=I%U*5S.]A/*VX3@1$HADA=RZS0@,V ME 6H3&E"B%)54^54=HI+-(WI]0!X#S3O_Y:TZTO;#?W'5QIC32A.1$,RF)U- ME1$GIQ4E.IH625'F2E,E5 >G69*!A>*8U(0 MYY=AG [#9Y&JD0CF Y0LD)0W-%@LV @5?;>,1&8#:U=Z)V(UF&9^C=G64.= M-N/9[W,2T[OYK(;BJ+-4)ADH/DGR[)ZB\. +H%=*TJBSB*T=YZ7';SN2]_@5 MI\=XIO(Y.8Q_C1>'+XZ[!0EY_NI[FAS72N;SKD/Z+U?G45A,:&P$F7)-/IR MZ(L"+BG3<5K:K%N/> .80XI4-^7+ZESH6UO-)LB+6;4*)60HS"LM2N^+YO=S@]8J5P2%/!8=)XT MEB+E>@G!%FX"5]ZDTCJXN-4/[-?:;:OO53YO*N5F!/Z RW#F=YS2P"8TIY[G MH_%TW"WJ,+^>AR(RTHREL!88XW7Q+7$(7BBP*@>7E2PRR,8,6 _9H*Q<:W;T MH)QFQ'F/'=+''!*JE^2Z)[,O-5LZ@Q2UDR6D!(DC1<7&!0B)1P@N\*!84)RW MMH%W GI@SONX:-).%5NSHR[MCNJ :EUF&XX6&WET%IZB]?G;(]_]?Q2?7J M3Z1PF5*E=[/Y\A>+Q7P"27$;T#@9$8I!TC!JD$7BOI M%;.A6-%'Z6A7 VQ2>;L![+*>M#'@D0K&>TYYCY""[+)TDDPR9; 4 4:-@JGL M6R>+_8QD4/'Y8&?.C;6__;*J;6WZEK&L(T=/:3_7PH/6A8,24M?4W8*..15# M+[-NO?%G2\A]2:P?G@8?4;,L0);E)LIDP#&N*62P&E5TRIKT\UCX85J@/N;" MNC9E_ZSJW=0\_QK&DPJOS.9=F. '3,?S\6*,W<,&Y90OF=!#9JH6812)WZ." M0'%TL;;0_ZWW9_8\I"'M+QCBY-@');/ M([>HO),Z:> I.C*GQ8-+)&KE/',6,XK2?-F@I[$\!G^\CQFRKDG:*9=VD@6\ MQS0)73AZ< V1)FE0DJ9K1H@Y M1(=,RY)R\WT#M\+9=J17CP@HH60PP@&++(-*>7E$((+Q14?/LK>Q]=[N.PX\ M[=<7M>+ ZE397.*#*0$9FI1"\P+)U].=AGQ7%*6 QH#*QQREWZ6)?V1Y55_$ MVJ56=[0X]5N8U+.V'PX1%UN?5;WZ86T7GNX VFB9J6ZE6W0CB@RE\YF\,C?5 M21L'CJL,1IB< D^H2^N]'2=/WM;FG'S*256+N.9LD)X3PR2/1/:0(?KJVI-D MD7/E VN=JEX!,"1'LX%F5Z?^YL)MYE/>SJ:?/^+\Z&(S/@VI%(Q2);!(HU&: M(7A': 0N5[MMR*JUEF^ ,23;WT#7VPJZF<;?S>M6^,6/=V3Z%L^G^=7_.QY_ M.4TV1BFB312M@Q"UP&92 !>$ J<3$YQKBMU;%TCNPC.D8S0-.-!,].WWUK[% MT.'[*L:#\JG#Y6!'(C$IA:AA+?VCR!H!Q;8!DBPJ&&VC2LW7#.\"-*3S+@WH MT$[X[4ZFS&;YVW@R&46MN).>XEC%6:TJ>(C(''#A@PY.1>%;'Z@^>_8Z6M:/ M1\L;B;3=&=[QE$;XEK**_&:Z"-//8\H=3D95C8YSS)D4)T M#U8ZHIEJ73FX&]$ZRC>/1_D-Q=^,$B^Q($6<^?PDW@4>GXIAKM:T=2:*%E/J M20]=2W=:!U5TR:W3E-O1K$,%^WBHT$CL;:M)IQAFTW2:A$A*,NI^5N!>UK4, MBD>V&WR_C&(8XGRVK]6>;IBL[$/ E* MU<&$A1U/C>5R&\H$2 M!N^CL9)RNM;5E$N/[R$QJ%WG/-,1LD"*X*2J2]K*@;!.DK\.#DWK33.;Q4I[ M")P?I.UKJT';R;IOXW8I1V4LZ:2- >^BKD$\@O?&@Q>U 1S*F-N?7+P/U$"C MYZT8T583_14++XUWN6KE0DBR!+"EYGB%#=IK5V>DS,1S)9QJ(@GQ=\(ARZ$ ZO@;DLLXN" M9]DZ?KJ.8J#Q\U9DV%+6;=<<+MNN"P[FC &=-A!CSF3"R'H%(8B2H2CNHTZ& M]W)^]D8T0UJ%;!9@M)%]'XE3;3.WF*6_#F<3$FU7M\4L?HR4*,F:P* (I'0. M13WGYS)(&K*(G"?*]OI+/F[$U#)9E-(%+-$ 4[[Z;)G *ZV@-NY#H;T4NO4I MV%N3Q<$D5=LSX8Y,ZT$B;WDHY6A\LN&/1G?2&/<@:95[3G12B7M.@1>'Y^CQP4>"$>QA(/Q#(XA0M8" M5:3 7LG6"_'WV;O!Y%+M&;&E MH%Q5=VA(?(*#BC&"T8(>K^@%(W@V= IKC+ MR5IO?>MX^/;M]AN8OM#5AGGU2Q7JUS!93KG%BS"?_Z I]W_"Y!A'TANA:CLU MS3F25;8!?%$,1*$Y5Y3%T#SJ7PO8D%SDYKRX9ON:ZZ0=^<].Q)X>++TX5OH2 MX^+BU;D8C!0L&PTQUX)8K&*(3%,>DST6X5$TO_/A@1"'Y%';4:A//;4L+RSW MI+S'A,1R0OLG+LX7H4BQ6O$"$6L'+U7(R3.5( GEHR@!Q*">006Y>?+C]_ M2$7'=AK?6,(-#[OAES#.IWV:*>ZYM!'W?.$UVY*M=9 ,90LJ&R(?TPHLX[K( MY!A/K3.M-6 -J039CA&M]=%G!AZ*X"Q3G&+JU9CDH0Q$2>9)F"+(,"7F4VN3 MT+[B^#SGY7)/F+PCN;^9O@A?QHLPJ160V73YN)&G9!:]T!3K)PK/@C,05,+: M3\"*:$Q0JG41ZGY40TJ^MN3&M;BHK4H:WC90EP@QOPKS*26"'<5OQT=5ZIA? M8AFG\6+$# ]2%P-,< 7*8 1/GANDI*@^6:T,;W]UTWVHAI1D-:9*8Y6T3*[. M<*S3OF1DK'$I2 >(L8"R68.O!YR2DT;[DG(VS4W,PR .*05K;6]Z5%;+0.UD MB\MR\,LBU,'QHEN$:>W--Q+1%AE%!F9"/0Q=/ 2A*/!@CJ(1J[44K?>/W(UH M2"E:8[XT5$731;13YW@-D,3L*32D3**VO5-1UU-T)H!54>FD L^Q=97\#CA# MRN0:$Z.5$O9Q14KH#E]/9M^V[D9U\X?V>!W*S< ;=:>J!3EZP+OY[.N8/NVW M'Y^ZNDOHI$=-O0@R+<9?3];.,PIAM')@+))7T-J#X\)#3MEQ9V+"U+HIT/KH M&O3$28AY>75MK6C_$1:UAOUCN3H\F>"RCWMW4"XW[Y&R"%88V4%E:R_J8&MK M]@)9NR(LIUPUMXZ%-X YI#RJ)[;=T&6G5V6VBWG"C^73/\Z>)[+.]6[D"T1! M01(WB Y?@18Q0LB@20\Q6QK[YC^"\Q).O;Z;73[2/4!9I M*1,&7/9R4J6V-K !C- BJ12%;)YSK(/K$7C[;?ET?8VIL;K:+BDS?%H?'S478X[;-"45_,$/LAZL[LP$# (X R5 MM=$KEIMO>MH(Z6/P\:WYM0.=-MS^L&HXKYTRK)93QT!1#06WMI TT#&*<'.@ M/"D;+LB(.MLZ#5D+V*!N(=Z;J]M68^WZAEY1*IH0&0TX!;$R46Y?, M(?H80#M$%,PXGEKO[[T#S@/KLS\%<5IIIT?;L])";,05.6#+7&T3I?O1?4D+;D[#.ZWEA16_-G>4W[G[-I'?KR$M_5F]J-M#YQ MRT!*7V]$,@R"Y)2@,YV(WZYHM[+0?+W5#!$*4> R&0OK^ Y?KN![8U_2G<#_-]=4CDTXW*)X%5C=N M5!PQ;9.QM56""&3S$BO@.+/ G,;:T'KB 6!('[YP2TIGH4FNN7'[^6K3XR:K/&\N_32C\ MZGO"KE:5#F)'TEG@^8F+%X=A_KD&:,9Y[S@9LV@2L=(AF34M(-E,P7D25J-> M*R"^]U%KJ?\GJ2?W(/QV=>4KIQ]L MZYV4=R-:BS>[VGJ[JSIQ.QWU&(O!KVNVRPKV666)GNX]2PXPZ+K1.$CP,4N@ M>!P->=003.L-=FL!6XM6N]KBN^]5]HTUUB.9EFG=N01.CU?5(ZA&&5=\=F!K M=*Z2,.!*C=,3#Y*F@W6OCVXM6IF?/EEOHKR6FZ(NW?H=T!M9G*T+:KGN M$F6UM[@$92WW7F7)9.LF 0^_9_TG*3UOKX$>+5,5]; D_G+H_=8CY. M"\RG[;NN_N#2.]_A?#S+UZ=#FAS79#5A"R M(/&IF@MHSH%A/?> ANQJZ\O?=CO"'6Z,9I('DVVHC6N(+\*25$W==JJM\UE: MA;KUMN!--T;O=W/P@#E^0P#2A_K[WK=_X_$%'CQFS8%G7_L\4[(?LDM04L@E M.1$C;^US-CW#M]_MR(^?GMNJOV]ZOAY/PS2M./*(/$::/EFYV@4,%3BM$61$ M(6G^J*AW=,3T!G1#:A#Q^.FYK?J;T?-DB ?E\K /IEL)>&2,L3G4ME4B6E Y MUN8(S$- P2E2U48JUIC'/0QC2!TN'A'A]TVH?1CNS%.2N=#,]0HIOQ;LI'UC M2(G^TLO:-7@@AON!"^QG9\G/#F^^Z;IC>@ >E ^'88[=\M_?B$[Y]!W/Y_.J M]?KM.<-.#AR]^H[S-*9W+F]\#UD+F3@XMMQU[4Z_2Z)D88-E2JTD7;4&Z.X!B#LAS!N9AJ/5[5RYTCV&*50*>9 M2:W3GPWN\WCXZ/\@'?SX(\S_PL7K8YIKJ^..V:.1SH+.28"RH=ZG5APHEI,F M^RU#\X/]]T :4A37GCNKYK"E?IHNYHQ$,!QKCU;%)7GPY!.X>LJ%.0H(Z9<8 MF]]D5Y\[M(IJO^I_L*3;;,&^P2!_.)S-%Q]Q?D0#?CN;?J[?KC0;RXII XS% M2$BSJT:>18LAD#A: M;U]_?'<^[8-D?6JRW:6S-PQ:",=,$0EDJ,WVI23>%QKEJ@JW;G M],P-YA>S;O%;Z,;=*!54HIAZQ(9;4,CK%74I0Y":%:VDI5_V[$SNP[@K_SI2 M5J1@N8-4I*L-O#F$V@RF1)IN@L+QW/P6SG6Q#2%LVPG'-G6I#U)>;Z';BB@N M;IWX?3[KND_3.89)E4W=;_E;-0VU8=6(<\>U*11U6I?J"HD&IV@DC*)1;I.+ MZ%KW4F@"? AAWB!(V;_:]\[8NDOX GHIP4N1)!CA?#WE1,(SK$!"DII@BH*@ MOBWE1L 'M43R*"B[N=[W&97>,.^PON5U&,^7F7Y'(]I3Q-H*VPZBV5[$V"C2 M72'P"KVO@GYW>JKA$LV71ZE2R;FV[X*4ZWDZ9>JMS)(!,Y%1!%&BSJUW6S: MO7W#E+L@U+/2X^GQ[+B[&J 4&T?HL1:\#&E+DO6O.7V_U,A3F-.P>M,V0SH9R,*\U')RO#HFI M[(6G5,1J$8%2% M.,PL4ZR6I9#2A>>NJ7@2 C[0TC M:)1NOF^ 51*):O 9E'/;B<'3BI+]%,L MU^UL9/(&;1D>NU]\$&_[G?L/(L- /-^J,Q]9$T*QT8)-&4$EIR&HR(',:9#2 MB7J%V* (O3J"Q^[;]DCHKD@/N]K:8M06<'50#6@FK MIZ6N6U<&M&:LD'F%C":#$C% S(7R"A:9,"XF%H:QK--:!J=ZHE>U\=EX>C#% M_XMA?EZ]&>60F' D#YFE N6C L=K PF4T9'O"4$TOTAG*\1#"CIZX=_#EK^: M*KC-7L!U 3\O"YR?XCVM+W^;U1?=!7ICD'NK-$1>=V/5?5G1U.LF#2:7LZ)4 M;;T38@U!#2E*Z)6!>]7F'KAX!O@4/O$)5P;@?)1&APPYF%"77PP$)S.D6".K MK&/QK#T=[\4UA%U3 V5D6YWN@Y3GD$^&\'IV/%\90;T+5GL_-!HV5:K>^#E.>+3 5!2L#H 2D:#B$B2]/5B M)$PGUXTF;3UR93*EI^UI>2^N!UY]]N_$RK8ZW0 M0&# >&X+CP==X>8?Y_-\@HP:1/RDI$(["@D4D)2 M2"0M4$ DM56Y[EKIBR>WPQI22: ]3QJIH\>@XFWMKM:]/J;0!_\@M$?'1\L? MG78K.8B3\>?E([I/Y, O6OV?_-T6<4B;!V\?NO0@@$;13EVJ1+SZP/.K8,ZZ MR;RD9,?J8+@19'),74,UIEY Y"2DY+B1%"R;T/J4[;K8MCX!NLYSWN-1&"^5 M4UZ/.^)!#=M'0ALN'5=@@M5DB .E@#5TER()5KR,WK3>MK(YVB%%5;WP[MI! MTMTHMMU1Y#6%\B=-_H_?\D1YBJ=I01E+O2R,:T,OM6=6HU*A M]9+Y R$.*?@;%.$V4>%^>%;7!T8NZFIY.7!A9859FT.D !8U4C2K,XEEGTRK M((>TR#,\KCU8C7MA6ZW[CT(Q6FAR_T77:QN"KHE91"@BJ2B*0\5:Y[$/Q3BD MI9O!<>W!2MP/U<9?<50T)AFEA)QM[4%';MXYLL;%6&T"I>]DB_=)-<(XI 6< MX5'MH4K<.=66*TWG4-&4S'5RP VKER:Z#%%@!E>DD-(84_B^3UGDX% MGLL"#%5TN1@F2^N.I_=A&E)!K"%?5@U+4]4T\UYWH+IT^/.T[<=2@J.0,W?6 M1,A8MV^[S" &D8%,G-"1!<-*Z[9\#T:L3[\U>K M0'?CL7A@OF17P"I5.S Z!U'5*U:5""5$$5CSBRSWYK$NL_;5]R\X[2ZR2N,E MYQ17T>@EC=XS!KY>.IY$L@D+47N7P@Q4,"@=:* 0?-Z\5"2E.2*S/?+P $N^@R&>)LH<9]\6ZX71*F($C0ELN0D M%)/(8DOCR%C7RDZ1=K<4^4NWGWD3(T46R*H K%I22O#+Y> MV^:\3CXPHSAS>^7?QOO+=K5,-!@R;J_@/3'SZC*#\[$D:P/H0#F32D6 #V3, M;8Q).)D#^AW6J^^#.Z2UH\$P<7.%]EB+>XGS\==0N^B\F7:+^?'I[96%QE 7 MP;9>3'K0YV]?L=M\.,W: )\!.'G6R%HCK:GW /!ZIPZ7"8*4$@H%74+;S-O? MCK2*8?O.;&>?=W[V]J"L/&2DS"9U)6(>)A?'+#[.WN/B>#ZM_;U.9N=(RL"2 ME8PB1"1[:%0!7YO)L\Q*7RTA.!0@:0L77%N-,?V?9,W #I0 ]R>6GTIK\=LXE]+H6-^_I70 M?L8/AV&.W8N+3YZ5&]^Q17ZQY1.WSSA:#KE1#K+RP#^/CV(M?[P<3X[IIR?/ M/SA>=)2Q9DJ*1E')3"+58)%"!964@9 I5.0.;6;T6U2M6R4_$.*V%O&6QUU[ M3KW7*(UDS,I("F22K7==,B$@^GJ!M0_:)XIS-&MM"1\$<$B^M4^NK9K&_K38 MS/7>"/$V83S/_W5\TIAX9!1W1A>20R&KK1B/X(1B8))T+F&)(K5>U]T0ZI"V M%.R=?(TUNZ9G/OUY_2>&#O_YM_\/4$L#!!0 ( -@S7U=;9E9=H%, (#: M P 5 8V=N>"TR,#(S,3 P,5]D968N>&UL[+UI=UM'DC;XO7^%Q_-UHIS[ M4J>KWT,M=FG&MG0DN:O[$TXND2*Z2$ -@+)4OWXB07 1"9 D?<"!%G=EL7% MN$]&/#3CZ]+%(8,27 #% MLP;/90(E+3>V2%2\_#^?_IJBD=IE!:#K_\F\_'L]FG__ZTT]__OGG7[[&R_WOK]/^7\M[GW_J?Y3R]_=3I<]HOTL?RG__KMUP_I&$\##$?361BEJP?0 MX_/L\C^\CD;_=/Y#^M7I\*_3^7__ZSB%V5Q!]R[AAY6_4;^"BU^#^BW@ B3_ MR]=I_O$__NV''\XE%R9I,C[!]UA^6/SUC_=O;B,=CF8_Y>'I3XO?^2F$..R3]\>\^5G0<82SDYF#1'?_NRF>,>G8=A2P+<^N@':^0?!*9Y&G+2$ M^MWG7L-Y ?(FPOJ1:?QIA%_I7Z<_S<&]'(^FXY-AKMOJAQG]6??9S;_<#3I]%7J-LMIWUHCG#]#[^&GF@R' WKSO,K?;EX0L7: MQ3KPZPQ'&<_WH@L$)^/TW2^=U)UP?*FZDQ#Q9/[=P=D4/H7P>7#Y1(*,;^BO MTX$-6;$2#03+Z(2QT8///M-9@T:ZPI-F_+;BIQ=$*F$:YZI?/.*G*MB?\&0V MO?C.7-1S,:]&<2[7AZ_KS2C1B3O%5WC^[S>C#[-Q^N=W GT_/CGY>3SY,TSR M(/,B&1<6M(@.5-8%?$D6I+=18^&>1]]XT1M"_%XB5UP[FES(9O':/O"]+I/Q M:5-NS,;]J>2<%K2^'W\83^CC_O8CVY9!+\>GI^-SB/-W-F;("2O^,Z%2%X_;ROTT+OBTM;B]X(%) C-D# MDX%L;4W6N!>T:*N-4(2&VZR;;Y@W41PV&;:4^FT>B*UY4#GY@I:=B:B?R?(* MY]*>A-&G^:;YXMO5K[P+W^JWCJH@=3H9CDHU76'+Q8))BH#!XHC?+ M4'B6Q43/O&J]J31=P(&S;V>ZODU0,YS][^[FN M;OKZ*_EK0UK0P)#<(K,2F.661"<\'?_<5$D67TQAWL4N]K=-0!XX 3O5V6V2 MJ28D>X^?SR;IN+X4UU&?OQ0#*W+( 4D*C@DZQR69DA@9)!_1&QLP\-(%J^Y$ M]01HU$XKMWFCN^3-G.T#X80(105 &\C\4\&!([*#L(C">*YB%#W29@[JZ;)F MZPQFOFGG*_/5;_6,PO".)*>DX&D9QGX(*-*AJE26&/. M=;VFPZ;L7C'B-N/MMHQ_-?PRS#C*TY=A>CP(FI$CE)' :#(H"PL0MV[Y"U$IP!1TKX;(@+^MXM_.CG%2-ZH)'M=KGB]XCNV/$ SPC$43L:,J3&'NEK+8=-Q+QBP)*"Z=:!]U<+J&NC@/0G3 MZ; ,SZ_TKP[VGTD91V]?OB'1?@@G^+9<+?9R92$IDBHM2CNR1E7,A39K+J"8 M)*W@J*QM?:G3V6*>)KG[Y< 2=F]]7W#7R@@W#C^-7IY-)CA*WSY. EFA:;[& M49Y_=7)CQ9?+DM%$PS(#+D4&)9%#E#& 0:$S:NM,\UNH;E;R='G=D_:7D'KK MRX^5=W/D R4O-$CC-"BO=;V6"Q""8<6*S)D(N[@;;7+-ETN44K,$+!;:25AP MX$4J((,QAF>1%&^]N/NN^;;(]_@8X@D.>-;22DW+<;0QJE05%G4@_6F5L^"! MY?9!V.L(&K[^UW+J.L]EV$*,R^ZD?SC/D/IK.AE/,?_MQ]GD#*^^.1[-\.OL M]&<6'63&H]JQ.3HZW ZR#$FS0N"PIA(.$9!C%[4")_/ MCER@H-O?^=P!J"%/[LASO(,W#U#T*LYL+? .TAIN8'HU/TK7 C6XD7G9B U+ M ;4T%E9ECM[!@>T5-^Y*ZKU1@@7T1;-"IZ!A9 TI"TX8)/M#)5M4@Z06U]/R@S.&CHX12C9,:M8[C#Y M[;=K"<-]>@P-E+,ZN>T!DNT@VW'%)H6%3!61G([S35!?(&'"$% M5+%(G8*1437FP7(DAT" !C+N(*_Q**6ST[.36HVP*GBQ *JSSHE<)>#HY'D> M6] HP'AC=:(S3_+6MT]K@SL$?G2CB949A?_^TPU9D:?\SX>5YOP>!Z M 2*_';VOP>QZ7T._\/MX-+GX\D68#J=780R9L],L"9"Z!B^4GRN?3@KN73&& M>UU:>^I-%[#UAC7'< GIU7!:HRB$X"A.9Y.09@-Z 7G1V@ OH9;,&D,2HB^C M=J$(*SC)K_5&=1^H_C>HW;'NUL;65&,=&,._T1;^[;G1[&68 M3+Z1%"[RW; X1\ADJ(LWM*L'93*P8FQ@UC)A6YM!]T#JGTZ-E3CN3@,=F,=' M7^APJ '!Q'+$/P&LFV>-;$= M&F4ZT4D'!O:-:[^7X]%\[7/A+)'-P'N#Q&H+0O$"*J0 /BH$$[1E:%61MK69 MO2'$0V-2EQKJH*#GVC%^IT1D*9D)/1MX[AK(?L M*9M"'>BN@^-NQ0LQO4#_;=E;02>TTL(D$"+2&QA<@9 ]^:A,>N93$*EYS/ A M./MG7QP+DC6X*4\OZ15-K$]+G?6ZP'.VW@7(>MUP':4\[$1 MT-WD@G2A\56DZDQ=.^>88DYYI3U@2F3;&*TAFJ1 2!6U=U)D90Z/6_4>C/Z?$:V:Y4 O[@D%9E<>)E "S)3:0OG$(11$*P5UBNK8U[2G*X- M@6[#V:$'VUZ1JRBSI18Z"-,O@R86T#"@*J*>ZL%$4-HA1$\6J9*6:<&\,=GU M0!#Q- GR$"WTM(/(BWPKD8J)1@ BJU5O1%MG:/&(AGQ@-#SQSJY-;\-Y:@1Y MB!:ZB,5?';G7Q/#S!/_WK,9-YN>MD<5(-2_ZT>3;.G3@.6? @_?">,-,ZBR: ML!K6L]_54F]=4FL9P,5;M0[$'EVM&_!V[F"U4>T:)G +O?3D4]V$FK/*:)2$ M6!MAJJP%>%$$9.^3#_6VR[1.1=@9==;WGW;&G$W4T9<7?KD7+\[^TQVX]L,$VDJAZWC;VVBC"Q]J. JC- PG;T;3 MV60^JV+^HG"=D-X,#U%Z.IV=<1 "EU"D-E':DF5I[C\MA_+$+9T&^ND@YV!> MGEYP4L5RWBF+EORV+$$[_4@?.5W^H\4[MLY:.C*#6JYC1_92"X*,]TR['1R- M3=?DK*]W\08DEGHJ8(3 72!^F>"B"P%EZ[2^_6?J?>;9OA-U$Z5V4FPY^3R> MA!F^&-?%7*0K+LP$QW4LC@70M=Q<&5/E90L(X4T0UF@F6MOY=P+JWUK;G:YO MU6ZV4E0']MP?'SY.YK;)MUO(LB@$$12(H)@WY/K1ZKS+GW/ 26.L<@M5H MGC!_&JFHB[3V:NF^".F?>)O74D9ET2%8EF3M>*H@))LA%:65]-)FWIH]=\!Y MPO1II:0N9F*,O^ \\?#[C/N+VT+&;-3>@$GU,DCY6)/$/$ACLTPA:"^;MY2Y M"] 3YE [177@6_YV-B+!? XG]7R]P,2+TYR>#BFS# I] H>U9R5RIG/@66'K MH-4R'$^8,UNK9>68B8:5Q[5'<_VG5F-_"2=UZ6&4WXR^X*(=^%7+EG&Y]Y>W M*%GN!LCVPP:[ET^KP83I&/-9;>JYNK#KU\L$9(T85"6V"GX^#(K5+I\*3.'! M"^:R9\W[V&T"<&OGL/8>=\RCK6\7*S6.*-!"]"&#<-9PIGB.V'K.V&[:NW>G M^UN^W*9RW4&U<;1")RX,%$66G8I.0W#2T\X=6,Q6%LY:VTU[5VW<'R-::J.+ M*!$1EBR!&]OR+9 N6*%8!"9KL_JH';ABJUN9F#!IWA"Y@YWB7F"'3)SVFNFB MN\^:1=+GE6.S@9-H;.$%N+*T-18?(!;%H$04R*/WV;2>#K AQ$.F5)?:ZL!Q M6Q?N[^-16B N-F+PACP041 EJ>:-Y39&^4RQ!^NL@]&" MOXY'GS[BY/2:'S(PBOED=003D(-*JO9,"^2+>I),)H]4Q=;GW1(8A\R3;:7> M<%9@=;8'2WS3#\?CR:QBK*D:2^ 6D[AVJ"')+$$QIB#42E5EO/0Z&J_3C:*C MVV[] Y]]B,SH0PT=# N\$LQR@^T\90>-$UR0#YBQ0I/9@?>-I;T^]J:T>T7"@Q>!5E(L)(,!E##D/&9R*+//J7 ?K+2MYTCL M66I=!SI?,VUN$]GO>Q+2.FMY3IM;0<$F!.DR&^DAVMUWQD9C)9-T.F 6M8I, M(@1G%.A0M,LIT3^MT^8B^2#*Z@21D\.JBC0$KI#' MXF,.43*#[CEMKB-=;Y0VMXFBNAA_<%=239#,H<^ \X;LLM:H(A<0):IL>%". MMTX].-S,IVT8U$I)'>Q"=^3TVJ>6$L%21;'SG8S&/MN^,)C>(@+?>YH#6>-\]VN@WC"5*DE5)6 MWH;TF0KY>YB0.3[\@EVF.=YZ2/OJU%ZXO+ Y55(7/GHM?(&R'VQY_9H M4+)V!VC&7%^.GM/QQU]^+RPV:%A*B2@'9+L)B(^ M!*YJF-8XIP593JFU:7L;1?_;4$O=W]Q9MI1R!Z[Q]WD -Z^#CDY.QG_2%EN_ M?CG!/)S5T>8#:VA35>2_YTP[K%(A@)=D5M>]$;-'S63KN,M#. M\T,PO\/)<$P[?JK^'.WRY_\>.)&PZ"JU+&@E7'.(I2 @OY#V&D^&_,/]2#4H=,Q=:1[(@A2,Q(4(,."]DSR2MVN&NM56^ M/KJGQ*\':Z6#G,CUD,YW8A4:QM-022/!E2*F3EEE6U.G;U*5^J2*^TUL"\) M2B_"23V%/QPCT@E,OUTU4^^6DQ<<2[%U5'(>8_$BZ8 M*2FC,BV7K.O:9:! )!L*7$[18T O5>NKRU58^C=;6^EKW(&P5T8'^[QV^'!V M>AHFW\97F>7EW.SNJ?'")L_O_K+BP=+829N%S((JW#L0+@I0EBGP*(ELSOML M@[,JM.Y T&N;A9N/N.$GGHXGL^H8OAQ/9_/^KH,BC3 ^2" OT(%B-7K*LJ_+ M"%H$*T7L>K[S?1CWO?9H$T[=5[W85%]=I!G>C3>EL].SDS##_,MD/)W^,9I< MBV2]J#L#?@Q?!]RHF))G4# I4"9'"(G381+(C?5*H6O>2*L)\"?,Q XTVT7_ MOP+;-1T^OB^TID:R)?CJXDUDOMN>TT3P4VH&E MM:!"21!EL"!0EYRY*Z%T9^ON04R]/]ZTU\>^1-A7%6]%E57)7).KGLAI3]R# M]\6"2P4]DSZB:S[_]#&6 &^D\S5+@#>1_=X75*ZQEN<2X!44;$*03BLK'Z#= M?6>L"MDD;Q*PD.I$T&S V1H#U5FYHHLII75#L?UGZ@-+@/>&J)LHM?<2X)0X M)H,>,!!"97UU7U*&S 3CK$X?T:V=@4,N =Y(UQN5 &^BJ)Y+@'EPKJC@@'M% MBT:=P$=/('/@/*>()OC6#N7!E@!OPZ!62NJW!-AY@Y)E01LU0T)&?PO,U/:? M4A?@RT!WH8]C534^^2,XA-!,XJ876=$:A_!9R7!)HU:D0&8L'DW ML@.>G+$-A=HIJH/ ULH$%"RI,%\D:!4)5S470R2>"^Y$+DRD$%N?7X\SH6^; M@$,3Z7>PM]R1D;(.LJ>>T+>1]M9/WGJ(Z/M-Z'/11I5LF4]B!.6% 4\[)@03 MC&=1)M=\[L!C2>CKB!.;2+PA%\X[N2[)+<-HZ-SB&KPJJJ;-%]H7)1UG6FE5 M!&?"W&# JHZY>YZ9MY'@QPVEUM"/G>/Y?3Q:!HEE-#P(#SS4!CUN8A! L@J73 MP@=33'*MVRC>1G&X=MR6$N_ KO\>TVR\ M_EFRB>P[8,=E?_YK&>:7S"T/N;ACP7<,Q9PO,2!PXP0HJN9U'TSHO8_8?8N[6-3;29U810:948&D+$C.UC%0+I$+H T#%+02M"H$ MUSI-K>T*GHG=9.T 9:D69%^ ">19%>X7DRD8N^FU* MMN6"GGG=!Q-Z;X2V?$D#ZX5 YA%,KF%<) /*1ZD@!Q8U6I9SZ==.7H[SZ9*R M@=XZ:)KV$,RW7A>9N9,^@6&<9,84 Y^8!A&="LX'=#[O ?6>M\?.M+JR27O7 ME8="61M"UH I)E"Q6(AD74.)23(9#??-.RD]XLK#;2C57A_[7GEHC2LR9 ;, MR3HV#@,X;^EOG)D@O,Q&M-[6'F7EX48Z7[/R:X\7$'!)@3I MLJ#K(=K==\:BR"F*'($QCN3F2P=1.$%?U@IUJ01O'G/??Z8^L/)P;XBZB5)[ MKSS,FF="P"%R7A,!RGRL/.]+U1I6'FRBJ@RN:.\J2$E<2 M11U_SE(!Y6V"J(P C,+*H!0WH74<^F KQ[;A3R,5==&SZXZ*2*MB)I0Q<,7R>7-L'?5HIJ??*0YF<2 (=6"GX^?0,GXT$$:/3)4K. M6?,F2 =<>;@-A]HIJH/H_M)9J;(P*X(L1&55(S.ESBPK"5 6P>AGG(G69:L' M.,)V&\YLK9:5P?D^DPU?EX*I#G3\+JO(8%)DU23! M!0\80P<S06U^O>T!;7,Q7;JZ]A#MT#EG*!?8!:R"ATC4W4#HY*UK2_1.^2 MX0P]X]PGV0'C+I[_S*R'JZ.#9+>UQP'PF"*S-H--W(+R#,$;9T 5E;/3FEZ# MUOTL#F5<0W<>[ /UTTTY"D*#IP)47S8/,C M3IK#5O6$?DZ:W%#G:R9-;B+[ M?4]!6VQL%)SJ@QX3?)BA?E$W^)&M,Y9.N2D MR8UTO5'2Y":*ZC=I,E@9;;8"I*T9>1817)1DB]399"Y'M*5US?/!)DUNPY]& M*NHY:;(X+Y4D'Y?G0JY1)GR!9PG%*<="SIKSYM-U#S9I^HRFCJ758"R4WP1=+![UO'LPXY:7(;#K535%])D^@5+\YIX%%:4#%I M.F"=@1*$]<(4P61K^^< DR:WX?L8JUM&G^1->CJ>S =T3OPK?YIC?0EEPQBP5DKJ//).%SP06PZ I3 MR9&YW3I,LQS)(>O_0=+NP'FY(B,KAEGRFR!&0V2TPM8N]P5T,B8I$3 V[[IZ MH&_ZPV3:@6?Q/>5^'88X/!G.O@UX4)E%(2$92[!8)(/&5?990RMC9."8UK7$ M*Z JAU-, SHH2[KS$%X3?YNT0Y"% )TR8(QS:1N M;L'<@'!8:M]&OJV3K<[7>=/6./T\'LU/&Q^E1Y,"E-HZ6,G(ZFF#1,P2;?#1 MN:3NL_'7>,YAZ+>U0#M(BUJ&KDX%>%MJA\=)2+.!$U$'.G5 !EOOT:4#GS(= M23EPF[ECL7D(\GY4AT&0CK30,.UI)87?SI?_<4P;%_YY ZM.-D?/$=!Y0UB- M!1],A)1U2(+9P&]6^F^P2=SQX,,@1>7X70JA=."-/16LK'^QRI,> M6./OTQ1.:JXY(2^A2"M!:\Y )>; L5SGH^J .5JGQ4ZXM!3M$V37]EI;$LAJ M',W\!]:-%//1%_KN)WQ%.,=GH]G[,,-W.$FTC$'2S#)!9VXTM5<.-P((90#- M"XK(O!.J]L'_(+CC]-PN?C(9V\ MY[G M<5;G2X:9!1UX*.#&',&$Z5 +AF+:2U[B9YRC3/TU15?[@2PJSJ29MH= MMY9RPXNZ.:AS]ER'=%$FL :H38I [J/ *B#]5G$T5-2X*RGW1@%4/M$>R$#J M$NA$DZ5>+M&)5I#.N-J>C:]U;[M?JE]1%M&WYC<1;LO&-M42GGP;?/AE(&5F M,FE>MR^R@571X(4T(+0GTUB+0M^Z0[U33'_Y-/[RT^(3SS6\^.)*P5?/Z\\\ M;"CX\592:]T1Z\/X;'8=Z*;Q6>/V>!SUJ5;869 >I,^\F8S)69M_>G831[&B4:P7KYRJ# M%]]J3NE\1V)!99X*AQ*(@DH8"X[7#*_ 0K$A!2-;5X^L >M0#+:N--%!*LY* MB!7@XD59!V)'%;UKP-M-H6YSU:Y+G2WUTN=^@B1.L6VSNCSCV5L_O G$W4T;POHG.,L0__>Q9J;[+Q[-T$3X?3RW(5 M#$'1?FO %^?KC3.=RLEG"$D*.DIE;0^UEA5R]W/Z#SO^JBM2WG6PMBHEN?GB@]_'7[!?/.Q5P'FJ"+F0%M_<-6- MD,E"U#J"P#JMVQ(!<@<->>[%U:#_T*IG_#*IXTMM\;(HLK@-DO/6'W%6H'Q:5&JAJ@YB[JVA0W0L# H7"TLM1^\[EUS60#V'M%Q,8\V>#([$+) M_9ZA2Y;P.WE.'__$DR_XVW@T.YX.&!JTPLY;(A%Z15)H)FBX\8Q;IW*9*^VGCOU M(*#/-&RHR)T?WW/0=6#'P')I?"QD[NA<345F!+&'KK.\'0GUF M8%-E-JRT?CCL.JEC@$4REK@ LKJK4ZX8!*L$%,&]]5@4-ZWK6QZ&])F!+579 M0?GW U#3[PX\,D<.O@3TF@P''QAX\OD@<9*[:"0_9YH M)RMH<\X%N.$!%$\<7$@%BK,*97#*VM;U69L$G#=?[]4HC3N>LYBG$20+L02P MTVW\#_CROPEO]\-OVA)D_3U\*T7U M&^"\ OI[.+U(YED';D=ILAM"W=ELFVY4OS[%FNEM'^B67!UHC1!MS1T+A#@F MJ\$D3,X;G;QIW0IW+VAV_V":_639!NIJG7+[:DC6]S">5>'/&_E,7^$7/!E_ MQOP1T_%H?#+^].W\!R_/IK/Q*4XN.D#51N7O\61N6$^/AY^G;V?'.+EE?H_R MQTG(>!HF_[S(010E*(/U/9_& MCXD,'223K5SAQ9@?98PNY']98TV-5M >D)VBC2 78TSV\N84Z:WWTGL@]4? M1T**<7<:;;W=WBNABZQ\%*X856C5!D&)6H"H? +.G%->YD@+CAO5(PRU?[-+($JHF;]TRO@N,:L8_3.M][%[H#SS+:[=[!6 MFEQYA]VP?N,53H9?YA-.KDVA:3&79;T/WKJVXP'X&U5Z+'TR4>GOF#\-1Y^. M$OWH?!SY<%H#9F>3ZQ.L54D^LAAKAT1=*\DU>"D8)"]U=&@LEM:E$%L!WGI8 M5/@Z/#T[O6R0]5N8U6%6W]Z6G\?S"5_6?*G.-=F)FW"!Y?=Q54PX.3JM MO3MH/[8A2QV@L%#G9:"F_3A)R-YQ'D7.NGD7V558GA*)FNBC@U#=%:Y?2("_ MCJ?3MZ-K6'$V"'3X.X$67*C>N?&:O',E 2.3A5N;>&J=37@OJ*?)G!8:ZL". M?XAHSF]?)+/H37(0L\F@,D,(O#8(<%(6S#:XTCH]X<%@^[H^W0>B=:G'?;EF M7:SJ%4[I!)_[2_,X>G8J",LKN7"EL(O4]2,*=-5#(!O0.JSK@. M$(LMH'F0Q247#;)'389[KBO[Y,(FLNZ [^/1WF!"?,BT.6#C'34TO87@JXC MC%/-D7>0E>'1,V^CHYKRW+07Y*)%G ME-7;MP%4[8@9"WU97)0QQVA1MFFFF4^?H(D1_K6?2.M@Z,B/N MPK4;4Z*=%E?2HY$*.@W#+,&8C:)]3A1(6,>^U&"12T:!-N3AT[X:!787.N^+ M'O<8%[MAQR:2[R*/[CR^_/IK.@ZC3TA?_ADF%\=A$L*C13H$F:OE!]9#%%& M,&1GE1I[+LTKC.[ L\N0W+::NYD/UTKL*ZV0KN\SWY[-IK,PRG3F+M!?7A#/ MC]O6UYSK/J^;V\\'K;;YI>A5$$ZP2*MS'+2N P4#)X]'%/H#A7&%\R1#Z^9= M2V"T.Y+F]_DWKBVRYBATG1:CZ5TX]^HT>I I9\6MXDIT=RNP!- NMY^':7[U M0;2MO#MU?A:MQ'F.Z,BW2US2+JA,J;=6";37T7NI/ NM#Y\;$/J/Q[=6\^:2 MW//8N8JUFJLFD*&*H PKX(J4D!R3DD=!*^P^ +8?[N\#=+M>1'P3&?<9_%P' MUU..B&^DMW6CH \1>J_7)(4Y&0P'S@D:'5H!@JIY_LEDXYW+YF96\",CP\,B MXIUP81-9]Q013TF0NT5 !$=:9TR63DBD U-I94UB0K#6J4;['1'?2$=K1,0W M$7!#H[#.(KK(>9L36I9DC78);%2U1U =GIYL!)$,3R$KE]Q:9[_LS' M?,1O);^&,>JTP# X.CE9X*FA^7.NKH-IC0/]:O4\9&H^XYIA]UJ M>Q.)=J'E__?=?Q.96#2UM*<4;4#Q4,>GI B%.Z^9B+*XN[*:-M8J/;/'FIEF MTK^ISDU%UW+>S 6&UW^\'QBM><(ZI%TJ28NP"9P0OD:?@TQ!N8A MJ&]3T75A&;W\_;\'"G6@EUS6^MM*G"0A&#H@F'59!YF]#'>Y,1NKCYYY".K; M5'0-&]A>8OCMOWX?L,R4DHE\[%##YTIH"$2<6H48"SHA"5I+]=$S#T%]FXJN M8>_72PQ__^/G@=>0CJVU1T#3NG M7F+XY<6[00Z,0'C:P(.A'8"[0.8T9V E0?&AB-#6GZ!G'H+Z-A5=P[ZC5QOX MT:N!8<$97Q1Y0Z)6A3O: 4H(4%0H2II%3#(EJ3L+?GWD9"I(AU$KA)$;XU65EO)6T\K7 KD,#7_4$EWD=E\L<;I MM86_"">TS^*'8\39K_4C2.(OKG75N)[F^^+;[5O6\QNY%)++GA:5,R=9N<3J MP)((1A>-65FE2^N=L;O5])_EUII^>Z+I/4^=2SK'()2O4\X5J,@B+44FX+K4 MAOG,%FR=*K%?J7/[0I/ULO V45>?"5?KX'K*67@;Z6W=S*N'"+U/4A2RYBR] M!#7J7D!AS! 9$Y"B3"I9KH1N79C\&++P.N'")K+NJR[=9H&Y("0E")(*!@)W M'#(/13N6F$RMJP?W.PMO(QVM4Y>^@8!W5A&V])L7#:5:!X#6>E@W<9W-U]EE M=\R+!U^9TIXGDUEP@+S6\02FP:?"P'*9&'K!3.XN;G,7LNX;R>FD+6=20Q): M@/)"/I9'<=CS9O&/<)JKHJ97&I0PN#?GK?8Q??'LS MHA, V/(75#"<-=]@EO?==QY2<(C1F-K\I-1)8U&&UH;4?H<1-M+1 M&F&$303<1QCA/7[!T1G]>OW!_+,6WWDUG(9/GR;XJ8*/WW[!\:=)^'S\;8LH MPH.?M740H[ M3_3BW=QG?./X>SX8K#-ZZ_IY*QV]JEI"_3_^6/X.M!8 M1-(Q0N(U+UEF YZYVBPPQ6*Y,5RW;K#S )@[B"VTY,_-/:MK17419U@NCW-[ M7B6N-3,6=*[U0(4.[A@L@^B%5=';X%3S!*,[\/3FRW?)D68"W[7?7;]!S[WSR(#;0D=_S!)J-CUDJ4Q05G.[WHW:/?7N*P'LS-MNIMYQ M:S$WM(+GH,[IS/_@M:2GZ/FK]_:G]&8T,UC)O(L'&'FM=GD_%G7.#0 M2AXX;Z'+Z\]\[)I\L/Q:EM'7WI>36DL\$"(9 MI@P#5[2NPVHMA$PV1D(C0E2>:[96*=/Y)RXJF!A,& JMKTL5F&:/6Z4:?R!7#HE<] MX5$KKYGH5A;4[R!(^&XRSF=I-@VC_ $G7X8)MTDZ:O#4W@*'ZZZ\40CQ]6@V MG'W[QS#CFU$93T[#-60U=/.:'C,9A9.+L,TUO]\&*[QG(.KL9U6;I0>9,_CL M/9%-!Y9;YPD^&.PN@HX^F9R3U&"4K1WER\"&<4.M- [#+%G@151P#5 -8Z\K@?0?>]U> M1[<5WDC O6G?:&VYIY-;2UD;JB0-05@.U@6!EFM>;,.-HB^MWQ%V[4GIF\BU M96RG.KH?ZMR>,,E+O*2%QRN0>4U'+$A3T=797LX7#>3J8E#:B%S,??[B>H_J M-VK02!_CSH39LIGI/*;Q^?/)\#S5]L-G3,,R3!>GVH?QR=D\/WK18) MBF0!E+,.7+)(EI;.:"T)Z&8U]*H T=K/?/3*[TB\*U_XAD&D#[-Q^N>+0";H MR_'I9]H8YZMX_;7^%7\/D\D\)WN+>-%F#]@Z-+3%>AI%@3X0G!$3QY] MFIOS+[Y=_]1;N^@/1?#[67VSWI;Y3Z='9[/C\63X+\P#%12WF5OP,2,H@Q%\HM.[2%]3 M1(.*OG6J6O-%]!]3ZIF_M[SUG=*@B]!3HP5]H1VK^IH_CR>_T'\[&YBB54PI MU,[:U08M",$8#X;1R<68]8ZU3DCM:BW/+-\%*3JH7MAZ740&0*O2?[.;*U?- ^^;YZ.<^4WQ$U&EZU;[VT^1__B=/9 MVR?3-8GG_P.&GXQGFHR\X"9]P_L-7 M88:7?>@&*C%CF3)@A:YM@HR#:#G.1T)Y'R*]#*U;\O6\Q"=#\,= H98#&.;! MX+E]LL9BIZM6^_HK3M)P6DW[-Z/99#B:#M-B73E+KFHVFRL.5 H*@DX"T$7) M2S9&WDP56A63[P[DDR'W7FF[Y1R*RW5M\<96TP;SU1L9'&>:%08HZT BFR*X M8NE+AV2L6Z:SL>LSMQVP)\C6'6FUX:B-K47Y^G_/AK-OUSK7O)T=X^3C<1@] M\, ).D?EM:(#QQE0@DMPS!7(H:0D993)[4TXKO7BG\PKM'>2WXAV*V>E[./[ M=[[17 AB$*WDP>G:_=R6VO(C5L]8@= F*B8U:O-X7J_OU_;\]NP#:6Z_''Y_ M7X[O=XEY>("7NDZ,$52H?0,P&O J.\&3]I;G1_-R?+^VYY=C'TBSY*IHNXRD MBZ#^+Y/QV>=I+1\8CEZ??CX9?T-\-_Y\=MXT<% R*]+5MI:%:U".<_+BI0=, M-DDR%;5SI8PI/MDA1?3V?#TUK-]?-X4G X.YO@^VK_C"=_ MC+[,-_L%N>D[+U^_'9"U8Z-3 4PM-E&.)8A!.+ !M4\B"W;S4GQ5B'JS!S\M MYG2IE244VJX6=A.P'W T'$]^"Z-P+L-!2CXE'@1X*P0H5KLUSQN1:K1,R2)S MRLWY=!/%,[DZT=<2IFUY@[8!\J.3D]_'HUOX2;E2J9S 1O2UR%A#%%B3S;F6 MQ8HZ-J,YWY9C>69=A[I;PKV'S^RN^%]AFB#)Y+KJS/\.'Z/7X8DMQ4+ MG0YL4-Q;Q\!97=.?LPA6/#1(+-ZO:UN:RA/BWG]:FX)\;:[['HSVA9^ M1-J8O9(0K*LY:[[V816%5N.3]8KL [PWS;P-E*=%O'XUMX1X#[Z?NBPH7G@K MBT*.Y<*DK?I\ Y_+;?IQ/ LGUW_^_3?.%@TE:D:9"]&ZD"QP[SFM MK(Y=1)20LG5%%>YY\]D5G2WFR;!ZOVBQA/ /GRP_-U&6+"O>LZSO?S3[=GTU MYW&@,IY<:Z0R<&B%E'2,1*L#J#IYU$=&GIM.VG%-OMK-G@:K#- >T#X99N^G M_IDT4*4($^K0Y%((IIYW;%<1@O'&*Q>EOYE,L/7^ MO!ZR)T/)#A6VA%=;W\6L=29\#%]?X(AT-CMO;G-[&=$P+[A3D'DAS\YH3R^* M\Y!#4BRQ6'+SHILVR)\<+W>@\"6E!=O=DJRUAIL;>C5U M)^' DA.8405R#0M"';,*),0$]":6S)UE-JP9&6\'ZLF0B?* MWH>N6>_KNN:]7XS@7B3&P5A!+YP/!B*OXS1881+1:KY>3?X]'7 N'[C[_EB] MZGJ\KC",X M1,O@18$L-!I5^PB*M1I"[%J!=_2M:JN_30366&^_D:1.STXOVN98@RQJ#H$S M6DP,"(&E"-(P1U(M)4;60'/?/;3?MD0/%ONXA^LUNAJ[(85 M TH;"UY9!"$S"OJ;D*EUYX7O #Q-6VA[7>RBU<%*05PM8Y1K3?/OX10O6E^N ML::.9AYWL9[=S$O>@B:;9B#WI>-=-*AYR-J,9\&EK"%D35N^$Q)B#AFX$"H) MZU"K\F1Y>\]HYSVG[2:J[8"NER'#JWX0%ZY5$@*E3""4#: 4&G"F, A::>DX MSURW#INM!+.'8=S.=;WJMF$K1770?NX]3F>38:KW9<)7L+BU_*J-!FO< >B920T5UL%^] XG\U;YH\7U MQ45;VQ1K)YJBH%CR5%0M!0^1C%QR>4SMN&')SFW,HQ50GAG41$D=N X7*YP? M]-SGFB-(OK&T=-!+*<#K$J 4%SPMKT3=VF2Z_ORG[5$^6!,-6X[=Q++@_3IH M.G(%]\&)>[AF5JAX"[%V<7Q\CRJF['+4DG8@ID&%E, [ HD>0V&B_J]UFZ\] M\'BZTO$FTFP]2^(7'.$DG-QH6W<1B!:1)4P1C%4>E' 97*0U&LFLL\K(M&;+ MJKN>TO^YOXWXQUW(KO74B)?SWOHOQY//X_/NA*013J:*8,Q>0TO?>4.FQJ@V MUJ_(+\P-;TLIM>\")RV"LME!J/B]-UHA?53.<2VU;X?C\1*C1_FWW@^609=W M8+Y@N_&98Y) ^H^US276-.1"9FKP)AN3&*Y7_?BPYQ\651K+>Z5'T-5R6NG\[_US6=[P?GYS\/)[4_VA0$%--XX-4!.T;K*3:HB,!%Y&;K*W686]Z MAC]HA7L8U6G+_/ZZ &U-H'V:D;+^:L^;W0P8YS$9ET!B+4-Q=0ZQXPP\F=*: M^]H*J77=4&^+>T0O20\L[?^%>@#%]FD$RZ;]PT**FCL6('@K0$5G(1K!P5J; MK,FYA/)X7J5'VW3ND-ZD+0BV3U-=-NU22=ZXXUA+S$1M4)_)]?,H%2"SD2=O M#&+OZ2-/K[7I(;U(6Q"L@RN>[M:YZ$=R;:G,9*LE:4%8S4 EC^ M\Z Q"R$5 M,L<>S[MT:WG/K]-.7J?M:+9/\W@V-F:Y*B&C%J C=Z"X,Q"C+B!-D=$I7JW9 M1_,^W>DO[:46[NW_?OWE,243*U% SHR#D@+)7M(*BHXB\%AS1O8FTM:-"![1 M_OAHPD2=4?!1^;[KBV. BF>)UD+BK&Z97$"4-H&)M'/27HK&/IYF[.NO^Q&] M>_M _CU\D3=B[J-Z>S<=JI*=#";'#"J2C:>BMQ"B03!,IYI9Y_W-7BE[_ H? M[BR?)_4>=\GA1QP]NU\03G.;>#:@,\E >>5I5\L2O$/FE0LV8NL:A[U9_//+ MO)\OZ,O8\S9KC&5&;I(Y.&0XDUOFMD B=U!LZ53*A$C"H\FC?XH;[Q W37 MK&PH6B5#\1R21GJ/"D:@HZ- 4AQ%=C;(W-RS>8+=]K:*Z>U$V;ONMK>\'T"0 M@7GI/&A6YIZ,!5\[6=$*BD,I; S/G6?:<>#.SC.;Z.*Q=.Y89TW/G6RFZ&M- 'W5?SU$'OM3"B:UUUBD!L_QV83Y.RX%VX1 MC[H4+.6HI.8"M @!5.)T).I$ZPY.IX@%BU^K&_A^O2E/I!1L(Y;NK!1L$XH] MXH2:0>!*A;J?N5(K=0K2]A:BA6IUHB)=)?MX7J4G5@JVGV_2%@1[Q,DL \Y+ M4,D5L$8B*$5[A>-"@9,F1\XME_;QI-L_L5*P_7R1MB#88TPDN;;4D*-PSB.8 M0 M4.EL(AM6K9REB5M89^7C>I:=7"K:?K]-V-'N<:1T+8S9*;9*J(<3,/1FS M(M::MU+;CFJND\XAB$?S/AUX*5@Q2C-#!I)!%+6/OH80M0"N9/3*"R_SWD3: MGDO!'DN8J#,*/BK?=X-TMY@-653!@DXNTY89R= RS@,3*L>DD\?<^IIL'];] MB-Z]?2#_'K[(&S'W4;V]FY;1J$!VG4@*I#$U+R#5^=^Y (E'($^!!_UXBJJ? M2\$.XCWNDL./.'IVOR"\EE@*%V"TJ5D0',$I+\%K[8PP9&+=;$F]QR_SO-FG?@I&.0$7U*J,ET66L<^UZ\R<^E8(__ M->Z,O8\S9GB_#()VWF"AWIX^3+ M<+&D>$O<)W/RTM_J9*SZI.&_2-CS0-K+\;2/^K"V./LJ(^M0NHVJS98AO/VZ M72)\NQSAE1<65 J2)PN8DJ172P6(BB5@B1FG2HG>MXXV-%["UM[4^9,P+P>R MX,C 61Y,(=<@,4:"JM**PELH*GMAHV1!M*X?6P]9_WO\+CEXR_]JK[TNBKD BG6U&.NV;)QYVL9"^@E;[Q-O=,V)? MHEEO1G1*XX<9O<3UXWY=K'/N<6B3BS5&0DYD_2DA!023)7"A./*4B@FM3Z<[ MX.P^TK4SKHR[T5D'3MD*: M/8AUP'06S[@2VFZA4,S6N1X\M=- [4=#GXGT1 MH+P1M5$=0F E@M#**%LGO-R?AS/ MPLG%U/@D,[?1@[>1MDNK:J-5SD$0UEADBNA:3Z]8CJ1_>[^ANL;-9=V!M?X> MIT@?>'PTRJ_P"YZ,/]=E+UR)!42)*@AC"LAL,T&4&KQW"%9KJQW/2-]IW^CI M/EB'Q(W66FBX5=2HV. #GM#W/_V"(YR$$T)YE$])W-/9A"3P!2^IS$7)B@-7 M8HXP@.?5U++!!>,PC;Y-H=QY59S;F)!K^@M M5HX<$W*K?=$,LG0Q-!^MMP:LK4- 2V5]=#8['D^J?W9T.CX;S?A H$^A MI A%U\&"LMI5,2M@TEEN;2X\-9_*L1ZT'00:&[/E5A"F YUT8(]\M_+S2ZRC M1**98!Y(;5C4F$';NL,*VFMCJ6F3/ DGI'.:M0Y+WP'G\"C22O:MK8_O?6QSJ_+D.T9#77U@3)&\><:UWUO@ZNP^%+ M9]KHHE!EZ:'W'JL R>2^.OVN?N?R'!0L<2\*"!L+*$9;7Q2N0$@Z1YUU9JYY M<NWK27,/"BG-?[GO8^=79A-"^FPS'D_-+B0\XFYW44J^79Y,).9&+ M!C(R%A=-;<1DLP%EF(#J\($,3AD3=(B*K75X/1# X1"H-S7.AR[1!J+ MM&VA@N(Q0FT"3I*P%J)'"Q:33(*I8K'U;K023&]7V!UO,6VDO2]7RW-3[;9_ M5Z\O&*-CMG;1BG6NK\IF/GXL@/"<_B]*+5(G6<%+T>SJ8KF1MI>E^FXO]:[R MRV_'NQ8S!M; UF6=PPIP@ ML0C+6-)"=]*XJ%=RW',KO MN;"+WUJ&66YA^J]=2I">VN(;0P@9CO /)#8+" MD,'K@L!,L-$7SL+-D.T*0_6^)^THG;^)4L9=2;1AP/5N<&(!3IB<4[8,F(VA M#A W$+7TH T9R-I[EFYF F^J;O%$U/T0B:Y\NQO>XYU?:GX,7W&;2HDEG[+U MC=U]R!I=TUT^YB49YN0EXBA]NW(P8M'D$'*$8ND55E8*K7RI=/>1]F>/ZD,WK86S*IY[?:TX'RSBN9$I127X3((W@5 M$W"&*7E73(BM?<[UT>WJ]K\%3VY: QWII(/;N>5(:^+M* U/AN<9<[.?,==, MAIHH<4:?]^V[7QY@T-IXIL!97S? >>N61&:4T\S3QV?/6R>7-8!]^'SK3HNM MC=1U\+\:3M,$9_6'BS2J%S@BKG.O"U& MA+4,FP9@#H%;.U%,!W>,ZRQA5?E5PNF4_H/OUY-+":AR!,.8($LR._ Q%Y)H MM(5G%5EI7G38> V'P,^]T&\'-YQ7R_A^"35)\6B4:X[BR35#>A"R1B,4!YE8 M!%7(Y716*M!"%B\4^3>N=#GG KX-(WSN_+YCT-!D+X2!ZQ M!(ZID$ 0P4L7@84BA&B=>[PIQD.B4:?ZN?QY,_".ID1L(CG._&T^%Y MV,X(3^MG!G+,M4"(2_!*.G Y>:YCM)C+6M&&>Q]U""3H0*BW5>ZW2TD/7_\; MPV3ZEMS#C^/77\/I<#3GZXMO;T8SG(S"R7O\@J.SB_8% R=BE"8H(*N,")H3 MV6HFTJZGT6.VP3*9UZ+ QH\^&$IT*_0E4:T M?1B^KHSSYMLA#8P9SLK4E M&E.A!F 8^$A&0K$/+PNELF+X'A4&D M7)0$@Z[:3$F#EW0"2J\\TRJ28]2ZD>92( >B^.V%W,NF7QN,S_>W[- &S^K$ M)9G)[&&,_D:VE$',Z'@)P7:_[5^@.72K\$%2[R"I93FR!?O7P=:;=;CKV26M M=+@6-;900&^;Q@*CHST,LW#@E+%U@)6D+=+6:+M*3CDGD^_>D=SQ@)!=<&,3 MN7? B44X]>7X]'0XK4+"R?3-!$_"*"]..NN2M-(I,$4H4+P&5T-64%- D?YG MF&E]GMP+:A],BX?J\%9CP)8*Z*+;^SR5Z5K#NMJ)F02QR"(8CL*%,5QB\#$' MT%Z3,?#_O1MDEG0DTYN8 M6L<46&00M-1 CK;,6IJD_5VM[Z:8_O)I_.6GQ2>>\V'QQ145KIYW $I^H/#Z MZ 9Y8^3I>=^HW\/DO(7E%H5EZWWPUK5F#\#?J/RLP711#-Q&;CQHSCU9'[E6 M(HL AFD,46DN6&F]M6Z->NM1-N2YY>')6=7/!TQGD_GUW>NOZ>2,E/(SO8T5 MV=ELL0>^#I/:-VCZ#B=S8(NTD:!JTP=ZCU*Q"*JP"($;#=%Q)EP4QA7?6'1- M@._AL+.V/+TU^Z9W=7)X]I(PF.Y6"L:UK(';#M/MF/3]6HFVBP X(=CF3 MK7;/>_NY2F<13XH\:V-5!!M5+8,5&KS3 4I-TI91<56:#S)8!:9_YZBMWFZ6 M+#<1>C>S@V:38:H#22NT!2AGI DQ)P*EB?^FMBB1Y&V5)*Q*3O*26DI\)K1\LLA4%$8AEGMX3\]F]0#<;&' MUR(N[4R*P9'G58-1BA/*B,R \R;P9&/BN762ZUUX#H0WS47?2:KC;4C(?@R%*6BLY!3!.LP6?.!!Z+VSF3<>@+/ M$HQTU,TNCS8ZT>:G6#W_:KFO83PX)R&5DBO4#!X]X2U2QES;N+/UIL9M]MP# M9T4KB7?0M&J%',YOLEQM[58Y"HC62A!9&"ZTX\6WMAONPM/737FG M!T4S@>_+U?:*!SA&S:!DK1(JKCFVKJJ[ \ZNKI;; MJ7P]+FTL^@[\D170%C&_=VUN3;' M0^X@:E_ 9NLR(W>:R=9=,:^>OC>FZ4/4"OH>3+WAEDS)2GT&5P-,;3S9I ML."$8L!2L=RA9RQT^-UZ%Y;!8T$3B'5QV+%OSQTD834_.,[@O^RT/ M1$X^)D;+E20"982AOW':&U&F)+2/@;>NWU\;W&%QI1N==# Y9.G6)C4W7AL% MTDE:N2\!0AVOK0SG2KK($5N75MQ_B&Q3:/7=I\_-A)-Z0[V"AAPK%:.B_;O MNRM:JJV()BG.DH(>+,.631V>.=R=G9V=\5F!EK5N0]*!1NS%U@1X2X6 F[M4 MK4QR*5'A5PCL"LLQFP-E!+*K:>%$!S ^>D@R1FVY*TM:[#Y0 Y#6/WB$K(37 M1N*9%FG@QMV4OSNB8)\@.@)8HV!Q+ZAU L6H)MRTY']1@2C-"[*@P6GK03!& MP6H?RJ.A:_%[Q0+!]N86%L9 @'@=74RAO8$>/MVGF\+03=H>ZMYWG>CV2>!9 M"DJ4M5#&QH)/.@..&@WE2PN5?([H=2"&,"WOVR.9;].0^P81H5K(<.O"]V< M]_6AO!11* \VZPJLMB;DF8%D*AH=O=82^\A?+YAK40,.VPV&B+?NKCL:DM+W M#_6O*[EU0.19/#CBGB,D,8/ZA0:.)X0R,Y(33Y S-37/7]?EOP%N1":* MRF ]=D[&083*)!IGJR?8RKPEF(QA7 MFRO%F#-WV5+T'=<^+,M[$ECV.C[QCT%VZRW&W\NM[P0O4U+4*@) M)PW>:4*#\DH2[),4)X%X5H&HS.W/R$?LN-3L7<11&K-J\+S_KPV$C5 N5J14> MHJQ;]RXQ\";7 GA"&6-"(A2]F'D/EOF1PV_?-O>[FC+O;O^^C86W0YVK(MF[ M\BU^Y67D8C6*+KDOHF=:@.6&0S11!^Z5=Q[[6,L87"M4P<50Q(_A1&03-%@/ M[,]YO@E_/=YV'9C?YYS"KCQV\7P_Y6?OT*^.6J-9=E &,E]S6RR4]0P'P8UB M3B:G%/92<1K"*Y%.0[,TS%R\V>Q0;=,>?GKX;;MY*%10IXS3O&-!$"K!:B/ MB^R)X[R\B^TY#F&Z$J&@4M\@.GUTT]T26A%B)&44.L$H5!,-RR'&;PO*@PO MO6)E55Y\G=J"-5A;'@!""H_*6$4<2>C[W@L+8B 8M:P>IM#=7@=/419%?=+" M2)#2%60V.3!2:J@Y8MPX2:/$7KR>!+*Z)WFNH5XW_QDL+[,^W>F#T'QI(!0X(%$Q,13!.>-?9V]TI"&^OK1?_0%.+/72^CFBI\?_?O\&[7R3ZD]3K= M\QWB_X_URRM/VOR:@G*I7I2]C: .V-["TR,#(S,3 P,5]L86(N>&ULY+U[<]PXEB_X_WP*;,_$W.J(1!$J=3237)=%GSZ1?@(Y/*!Q-@@A2]VS'CDF42 M..<'XH<#X#S^Y__Z_K@"WWA>I-GZW__@_LGY ^!KFK%T??_O?_CM[CV,__"_ M_N.?_NE__E\0_I\WGS^"MQG=//)U":YSCDO.P.]I^0#*!P[^EN5_3[]A<+O" MIWC[7_FO^9BL07#G>@P#&&R&4!3%R?0N1' M;A@)GR-7+.[_3$GH!S%#T(D= 1%*7!@'B,(PXM1Q>1(X#JT:7:7KO_]9_4%P MP8%4;UU4?_WW/SR4Y=.??_[Y]]]__]-WDJ_^E.7W/WN.X__]-T_?2_8'_[CGP"HXWSAY-= M)C^K)WY>\WLUMK<\3S/VI<1Y^1$3OI+25ZV5ST_\W_]0I(]/*][^[B'GXGBS MJSQ_T:J2,E%2NJ&2\I]/=?;S!>);DK<\E-6"<)6ZGVS)V(?I)VOBWDF&X.,+ MW.GF8I'K#^K=FDWU[6Z[NECT\26V]5ED)5Y-\%GLNNF(O%*_^"A_:KI1#?60 M:=5/0]T=4?GWDJ\9K]GR1=,@9?_^!_G3XR?EE_*C/[]ZNDIYS2MJ/NS M6M:*+U>?O_S*'PG/E^7V^UWR-?SM2]M5U9YA8W\P4*L\,3US7F2;G.X6ML?5 ML=5*+E1J:8M_7N-'7CSAY@4IMK(":DW^HQ(8="4&M?^:HLVM] ]9MJHNKW]_/!MW&5MUKAG)X9IN:)GVDFK:FG$KX8,9%GCP/5 M+[.!GU4]$%*L/X L9SR7-O01%;>?/Z=L>8N?_UK()4,9RY;UVU_DB_=4-GV.S=]S>PK;V?1%:7Y1AH;*2;I*BU37EQO\ESN M'I>"H<#W: B]B,K=G.\G,/'DYB7DL8=(&#DD\DQ6TY,]S6T5;00%_/L37Q>\ M,%LU3P.JMUI:@6EDJF@1Z@BY (V8]A;<A86A!/]S/I0GA6W?T%\/P+9I10 MY.7RLQQFWEAWE 0AC;@+$Q]AB&)I^^,P#B%-,/5BS((XT"* O7;G-MV_E-)Z M*,J4XA7XE6-%KM7IV=>WV2-.UZ=7NU[P^B?[!9",;@ /1$-[>I_0O6\RRU)]UN;9,J>4*&=H*?^>=@*_98++J8Q\&*.(0<8ZA_$4 61"*P(MY0#QLLFX;]C^WZ=V*#QKY M%X \@XX*BXZ5:[;2FPZ,WOH_(MPC4X<)TN#K'28K#I0>H%+$XHYZ((26S G3 MWB$J>U+]O*O-\V4815C0)($>YI+O M8A1!@B($,1-1(']/"'=-^*ZWM[FQ6ROL K"=K N UW+[LKZ7>T2>I^O[@5N9 M?MSUZ,P:FB.35RMG!5U'4M"(:H^=M!"QQ$7]?4W*/%IJ[_.,WDOFYWN_K5F^ M>K[_PNDF3\OG7_]>WN8IY=B9IB<[%M53L7LB MJOG&,$-#N8*PS8K?B'?K4K;^MY3Q#^OJ\+6Z8*BMG?=2A7??Y91=X]7UIBBS M1SE[WSS?YAG;T+*07/6%Y]^D4,7.]A?,\P5R.?2"0"@C)8 QY@S&$4W<@%#J MFQVFCB;IW%BKT02H[P:TNH"M,FJ+T:I3+=VM0H97G:,-O.85Z1R&VH\DY[67OV' ?7!*/WN' E>8!Y_P-+CB[SAZ5-5N)T]E%R^YW MS]SB9_6[J]]QSJH_[F2O4JI;.<$^R2E7G\TN$8U\'F,7)C$E$#E4;H(YIQ"3 MP.4.XTPXS&B1&4'(N:TOE:1 B6IXX#_J2&JN&J\\/F/?,AH,C3GQCXB=+;;CNT<*)U^?&GDHP4$D& M< $R 2J1@9)9_QSA%%3G#Q LH#0)A^U0 3O$[!P2G(%@T.G J38G.Q8XHU3W M/.#XY-T_-M+*_+ NRKR*P2ENR@>>WSW@]!S+F=\'7[,?Z(BSM"UYCC$=>:"N%8*41Z&K= M=4!01TS=YQK50:7[ M3:@X[ZH-(?E!( T""P %L,Y(\5"A-N2FP/W%0[%6MR MSVO[8GLXC/ )10#'$Q$^@%_N.[X>)*VAL%IZET>O<=DQ;H=7"TQ7[?[3\\[45W?0@2FL0 M-%<0V]".S?XV4!T0N66 DK7H+9T^)X[@,H#A,(K+Y.5A]-0P8W&775'9KN3+ M39&N>5'PXI<\*PK)3)PZGN#0#U@$D0@8C -U6[FY1R=)7?9QOM M]R[U'[GZAM.5NK9^G^5?\(HW_BHI+SYSI6.ZJF-6JZOMG;< ]AAB'@L@"ST? MH@0G, F\" H1N;&+W21VT3 WD6$"S8VHOFP>'W'^K%;YK4)09#E4*LF=F[)I MJP$>ZOXQ<-Q,O3S&'XVQ#:Y&E1,CL=,'O%1H(F>.R_"U[K,Q4)Q7&DR\F($.^O,&-V=5G([HB='_Q,LE94D^XUR7]=/J0JI MO4L?.9.6L[H)^BM>O5_A>UUGLIXFYD8-OWZZ_= -$Z]$5C;CRTO=?@+PUX!GFA];4[F2>:AG)=;S2=QP?>8>R2@%57OD63 M9\:CF#J)$T(_5'M1CW(8TSB!W'5=QT$^08(875T<[V=N/-'-4E?+"7ZZ_?SE M-U/7G5.P:MY.7 [6V)<2ASC9SV!Y!@9;-Q G>IGVXJ%?U8/[AC./#\[9EVWD M+N46/ZNCLFW"/L&CQ(L\Z$9>"%$2"$@X#J$;!"Z.<>!&3,O_O+^;N3%!*R5X MJL4TSM9W#$J]Z7\Y0"//_BTVC83C).GKPAKYCG4R=GJ]'T2.Y^?J>OL K MG9QW!R/[[F"-T]>[[SRG::$$^AM7R7(YN_K&\!'OM>]'(WY*VC<0>)!6BQ T88(L&Z, !%!Z6_9%?9RQM M>B9/K,'T/LJO,T1'O95?291A"^J'-+UQ QX'Y\D"!(WB,%230[>IU P2.*'TV..#8.Y=XH:;?^-8_0#DI MO71[O2K?<]DB7JF0J(T(S>MDPZ9'4Q."/S&5;;;KN2957Z$N-%@"7H%$* M[ 9K[R6+:71'@-NJ@^=E$KV"0Z<5"(\[<-II>A@_7V>/CVG-]%=K5GL?WW/9 M.R^6(@H"'PD7>C'U(8H]#\:4"(B3Q.-N[/JQ9^2LV=/7W/BT(VKEL_U"6#-J M[4-8CS(MX38R%0Z#S)C0-,"P1%1]/4U*0!HJ[Q.+SBOF1S8?UD4JG[S+,9/- MW6:K5#5XFV?THT%Q4(U69O19-]*"1ES0REM]XTIHSC:5<]%'VV5"#7 :=)2A MT_YD1QL&RG:/.DQ>FS@AWN'=3I/**L)^D@B"8$"% Y$;$IB0V).K;"+_1[%' M0R-O)>L2SFTQ[KH-U.G+H.19Z]I== M:*>[--_*#!JA%Z!%N7:TIL^@HP?X!4O+^*>/6=%C& \IXV@&GKV2CIK]3EW> MT0R.(Z4>#1L8&)LO;9S[^UP1@&SV1C0E@'9'-['#N>^$2!*7CR 2-( )%2XD ME+C8">- $*-2;>M<]L*W=I'>X, UV/L&Q".3)/78BB>03Q)..8P MB9,0(I^$$ =. &.7ND$2>XAS(ZHYU^')8T1' MI@+,C9[D9Q>;48XQY'H4-":0(U-2+?H";(4'E?2+;?:BYX7R@"0!=7'@QIEN7B6>0T_U4V$>FF\/+7*S7YY"]L5W&;=V4T,@C,,D MQ# @-($(.0C&PDM@X""28#\D7F!8Z$:SY[FQ4R6XG#5/36R(\A2ZS_'I"/4+ M@==T.Q@#SI%IJ:UB,T[>=%- K-6RT>UWXGHVAG !UG++^6E4 NUJS M=]^?N,J">Y>I7]UL2DFI:^5*=M6NX9^()A?_ M" ,_,K?;=!7[:U/>=,W N\Z'HWXMG]JAL@!;7, 6&%MUJ64HI75;J"$(N0.PA!WXDH1+'CP<3# M'O1=YA#L1AX*L,Z:V=O+W-:SKGSG,AH88-F_N%A#:&3B-P%'FWRUE.\C1ME MAQ3EWW:$V-_V)&2EI5Y+)'H/#\X=58\F? M3GL;)?RN4HAA5?MM V/7]:"T7!PA$H\QL\L+P_[G9LW\MI9RK>1DRFO?P$MS7O:#KVWD MC 7I^';/L3R8K?C@=RD_:!7H^(B,F1-3"[O1LF/V]_[*>3*UH#F?,5.OF8GO M0-[C-*\.>ZZ*8O/8QD#6YT1OTV\IDVMHE= IBBA*PCB" 0H2%:C.(8D<#@5F MS!4TCGDT3:"ZKL1SH]#M031KA 3/*5]IAD=.-\XC7UB,,7KSOYA06C:O&5P]F [3:U\Q:,O[8UPEF,)O[?)"]<[84 M#J7839!<:;@TPA/JR9^87(*XQ^,D]I0W]O(;STFF7==-JV,3\NEV/QX'2;F_ MI45U)Z[VJK]O!09I)3%@=21H^<#!$\_3S'!=T1R02\X++@%Y9N<&6_M=C<5. M+U K-O8!PBD@1SU(..AT!@<*IX#0.U@X^;89I=$FU'IY??5VZ7N.$#'QH&"$ M0!1)2SD1'H4QLD6?MB^+P+6A?6T$M7B^>1\-6'-7ICJ:-F#JK\$%LU/DW M+O1!>)DK^;I*+O-AW1:EEP_(70TO"[7!J3=$JU7VNZI*NQ3,]W%,$BA\QX,H MI!0F$7>@'["(N @YPC'*;GRY2+-CG#IM3[JNDLHK=]RU-(!SOL*M5VZK L"M M#@/]'H8/HZ%WQ"2#,S+#Z2>=WXU@JV'U;*TCV"H)MEHNP-6C*M\Z@A/&Q "FS"D&II6Z.\:7<]8&_S=,>$Z"L MG?9H=3KQ:8\)$(>G/49O#[QOW9"B3E7R[IO\XTZV\C93U5F7,?'4:36!H;0< M(6(LD98D"6 0QU&":(2(ZQC=DY[J:6Z4M!,45)(")2KX6@MKF+/H-+R:UY,V M0!O[T'D87N9W@.>PL'5W=[*?:>_'XG#;$FH.=3MJX#(_?J0_^BSK-5DD%,? ='+(JUSJ9GJM_ B;P_1OJD1O85 M>?T/9?Z>)4U&A Y(H$()E!*F74#L%JD%:+$"O1_F*(>D,_T27MMY923M?@Q7 MEW&'UIICS,AB&MXYWZ^_+Z^*%+_[3E<;%<%[_9"N\:^\JCK#'4:Y&R$54AM# MY!$$L4\I]"AQ?,$]AR5ZE]!]O2'="^&9&VI;P(R\O"@1E8]A M(R2HI 1?:SDU=V3].+&,5K.AFD7CX_6BN]GAIG_SKX-'O2BI1ZN5QG4IYPXXAQ2'RF0G90!'% $L@%=P** M<.+2<$#EC1>=:'VMTU?7:(W"3&R]RPT#!5]"J6?8FR,S5=+Y1JX%4)+9S"Y_ M1&%KJ>2[;4^<-_Z(6H=)XH\]-&S>=KV,>564M.,;\"O'*N:8W:P_<^5&I/*3 MK)DTK_+VK](X2XL[5:)K*2(A>.3&,*2"0)1@'Q(B0DBP0P(4*D/(J!J\-'R2\BK3Y$94.[1:ZF7HRXVH*V+HN*[*].!22&(70Q(ZU!5<((*U:-N*-'.C M:J4/4)\6$&DNZ2!M=&GK3&?55A=7LAMLXBX>-(U-\91#,3(A5Z.@= %=953L M1Z,.J/0!2B$@-0([E<"- .UYQ-2#9+ CGW*P)MJY3S%H9MM\6R#W'@=4 M+YD?DM#%'@R)$T(D!(5)3%WH<\=%B1L($9DYG+RF-G-;BQMEMCF(4^46=M3% M;NIJ\Y=]-"/?W$[]*UM;M&=7 L>6V[D_9U-ZSZNI?B!V[C>6P,O*B5[?<,J2JOC0:+J ML:N=R\=M)58W\CD1(8&>)R3).-B%&$4&C>@%H'>.RK45O8FM^=&D%EZU)5K]-I;UN-@#BXAC5[>QA= MOT) G(C0\R@1/##* 7BB MG]D14BT6^&E3L,$Q=:O]1NV=X[2OMH^\M.NF0JB!_@&$H[15HN+*:0""(-&=<184P01T%@ MEJE-MVN3*3!-KK9?1K&6JVG!D)4\/%'KK3 MF2Z=HME?-N2_."U5 HI?<2%7 _")EU6![R]U^9FG]R^NP&5?'N' MT_W).\Z"T\\D%^(R]I'+($B,2E6?4'Y0/>K]MB8K.GU"B6YEZ5./#+,HKBBM MUL7/G'(YL3V!""(4."Q(')7X8$:,L3'V= MS6T2M[(J:Z$1=K'+I%1E&J4Y9VD)5M*\X)5A\2]![%272/\2^8ZZ/5(?5?4+ M^8.WD$T53W5RH-7IV@'FPZ1G8M@"?V2FV.+^N8N[4);$U0OTKVOTU3Y[FTK. MGB6A@Y8EZZ&WJTDM!AVE]ZT$K7<&NJ5+$S&]7U\WN2O;>@W%UO+8VB6[TEA+ M'(=.&/H,.E' (')( ''(.8SDE^?$.$H$-\I!.42(N7'9.SG^V6-*P0-G]]7L M49=\@+:Z&+J7#QD6/8X:&^R1N:L1'[3R;RO(%(ON'JD3U;U3PZ(+^04@VO(6 M'R+"M([A%X!TX -^25O#J/&7+&._IZM5-_N#D$\BWX]AQ#T!D8@=B%F0!W#4H^N+D1H9#8R!<>8:'K4M\0C MQWJ8E"9Z5-QG@;Y'7\>/]7RA\5Z?1">AQ%&%]A+,%)]0!#&A%+J!CZ45Y<>! M:[3[>UUUYD9=M3;5YI"W58=4UE[YZWDXM%[X]>@QZ(_S38Q,UC9=6CN?UKO. MIZ5^+9_:0?,#>;7:&>>9N+5>J,P/Y==J9^!L.[9:DLK\PN,NQZIU*>F;YP]K M5D=9:]YZ''MW;JM:(V.7M20A$940K7)-W>"5_@7(4;#.WX)IT[TEZG[LP3\:']9.DBH_\&U_Y3>JE)&8L"C&"KD@0 M1)QAB%U$H.,E#J5!0J7]/"CSQ6%?_8 M)9\VU5R(1"R2J*J_Z5.(7()A++@+$8X9$8)[+(B7=>')+R7.RVEVZ =RFLRX M?6G'FWP=,:NM]JMLKP_'E @6NX3Y,(B1'$G?BR!Q<0A#GU&/,<>+/=2,Z;LU M^V%&M)7U_W?C.:VN?C$RZJF=N7WDPE Z^#,NLS29LW4\7A=+&$0TC 3W"(XB<@$,<9_;4IXJ2N/2>9\IUZULL?=I/]L*5) M)O%)!=K)>?J!83;(9Z[B4FE93W Y.$WE+LQH%,1> N,(.1"A",,DH@GT0D+D MWQ@G9L6Z3_0SMPGY0DR@Y!Q8$^T4KGHF@@6T1IZY0X R7NG/P&!I/3_5RZ2K M]AE5]]?F:[MR6XV M-97L7G+JOC+2O45QYCRE*K:DEP'198[+" FA&[@N1,R/(::^!Y/ XZY#DH % MOE5O0WNRSXWR*LDGRXMI\1NP=&+^.B,[@[/T0O5(?P%B6? MU_&\_2$Q/K@?0837N.A!1_@$HC#V(/:3&/J()QX/'$KI M-&6"A\D_M[5Q6P88-SQWKT2&3%5;%>UH(XS-+9OPX>*,:""T75VO^;?K[/\*:M3 M3*L/IG,%I6I%2.C7*G>&.@QK7$*1YU$OX@$4Q'?DXD@X)&%(Y5I)$1/($R[7 MVC1>(,/<%K@JY8@2SZ#*S4#T^]>;B3 =>JD+MT[\+IR3:M&RD$#FYZN7M!ENK^H$G1A4\.V;Y]X M*1O-'KG*&[2D.')BUX\A<9,0HB#B$"M&ZT M,FS[&-F3JI+.;!OS$K+8P=3UG1@*QT40Q9$/$Q=CR'T4!32DD>MX)OO1X9!- MY7QV,61Z^[+!0(Q]ZR,QJ 5K$I+;V\(<5=G2!N-EVY.:_T?5VC?.CS\T,"XM M7:DA(A(W M(#!)7'6^%'CRIT 5<,91DG@.#6*S?%G#99G;[+][X#FO4L\9!K%=,!QZ7#$1 MR",S2ZT%K-0 .SWJ@H^+7>Z"KDIM+D"E#E#Z6(R2NQQ46U%T%T@R;93=Y9 = M1.%9:'(8BW8*-[>9-8E $7-\'PH42OL0BQA*BQ!!AIV QPPYW ],[,/#+N9F M)-9)>FDMW/#TZ$>PU&.VRQ :F; ZPHV0YD0XW'9NPBE\34APY7GK"421/(03[TF!.%@:0 /S1*G-?7V=QLG$X6 M_U;8@?ZPO1#K37Y;P(U, X,PNZ"6P6DPK-]2T$,B"'E@5!VNK[.YT<;1%+8% M^-K*:\@=O3AK;HDLH3?VGF;9Y>K^^X]_+-RM54573U[ZGB;DQ0B,J4+*"2EA56SLKUUFI M>7AZ#K-^'K (U]A7BCU(@:]*8E");"G]EP8H@]SF^]J=S&5>0[FNN[S.XP,F M>O:%KZJCJE\Y5NSQ28Z^]A0_]O+L)G?V^(37SZ 5%32R B6LP>P^"I3&O+X4 MH[%G]"!XS&9Q'P3#YN_1%J>;N7T*O9BSO0\./.KC1<'YS1-7%\_K^X^R85[L M5IH XQAYB$/B)SY$'B4P\4BD75*V28!14XDF/+3CP('HMAQ8.PD#/H\"MR$RE\0(V?]WM[FQAM;80&1 MTAH22#^N>OQA#:W1S846*"4HV$DZ0NI/+4PL44=_7Y,RAY;:^\2A]Y*A=W-3 M%&AYM5HU!8)DD\VI.(K#('*1#T-?N9_Y,9=V!H^AZP;R/S@4&.NY+_=T,C>6 MD"*"G8R&=PV]:/:3A"V,1N8&4WCT/5JJ'@ MUO]4Y]F+O0BN)(LH=]:';"7?+][]8Y.6S]MC;<=C3N)'!'HHD@'$61_#^C389FQW,CA(\?KMY\^/CA[L.[+^#JTUOPY2]7G]_]Y>;CVW>? MO_SK/\>>&_T;>/>_?_MP]Y^#71#Z!T)S^ M1T-_MZ_EYZ %1H_W@][[UKU&/Z9K_J'DC\62DD2PB#K0"R5!(4_^E(1,0$8= M@1WN8BR,?"-T.IT;0[U-)=XIV511)9]5%%RQ &]5>OCLB3-PQ^G#.EME]\_; M?[S>%&7VR/-= = J&N4S7U7.:\5#^J12&IH;LNY^(&>@""@;_GX;M# MG;](N=O.77W#Z4J5*GF?Y5^P[*OV*E5!LL6VI+J(D4\<1QIG"'O2.$.N.@L. M((Y]54Q58(*,#G+,19@;"6YE!%0*665B;IQ$T[4J6E@EZ3#U&#,>%SWB&A?M MD6E,"=\Y$Y*K02L_%%D.E08+L!L-I<0(SJC#(;3FDV8LP,2>:D,!.O1?&]S2 M!5GI/_,G^<4^J-#_@]S/RXC&28P"!W(W\"%BG$'B,2Q-OS".!>*>%]#EFM]C M53K/,!E]7\=:TS"II^%!]^--R9W(^QGH!^2;[P5>C]_LX#AE/OF.L$>3REO. M':^#C_\+9O>RO MNT-29?M4@.274LYS]?A'-?CR']\\'VOL,(Y2$D+"$010G1/X4 MRMTK2?R022(3U.AD;3K1YV;T=3S=.ZHO@%*^B08^6ZORM;\&79-QCF,\NJEY M^?!>$-8!Y?YCYG(#8W[G,MHMR_Y^?F^W3^GF<;-2&]E?'GM--QAS.LC8KC)2(1=R('DQ!R%E*()*P0DR2$-(F=V&41 M"S!OJ=K %#028@ EC\S&6]$NJ-!L/A8&9J-]?'^\I-:M?IV\UJ,7]=1 >=RJ MGGT"S*&LIP9 FG4]=5H:D+NY=5=ZECS]F]0T+^7.75+O;5:D52]+!WF!ZQ$" M@R"1UJO'7>5$1""+A1MYG" 1:U7[U.MN;OOCKR52 G2I^L]44N0)5O[$^6DB9K MX]2;'_E\*].E0M;6Z$768_VWAEFLE5/AOB=5$T:%?43B&'G0CQ(/(C=R8,P% MA;Y@U&?,"QT2FYQ1]O0U-Q)6M0NI,H]*#O!]SOD ?Z4^:/4L34N C @F"5<9OV/!$D?X"!E=HI_N:FY4<=WX-^;\&U_WN*:8(JI' M$79P&IDA6H@J,:O8DE90H"2U&;YZ#@UKL:LG.YHX$$90FB+0]4.@3BAVY4[%; =I N+D1 M42.=*DTIQ:NV\94_,LCJVD=/\FG#W8W5L=0\>'^E$9K_D7SU']".LO6C^!%P M?^VZD,=$^S&*/O: :JVB8U\?0_VY!<]SSC[7NZ0KQIJS4Y]CX@4AA:'#*40! MHY!0+X .)20(,8JHT$J.>*ZCN5%R+2=>=;:.@*2KE9SK[VFAFR[UZ,MSHX*MD*"54M,3]C0\ M_5/:"C(CS^5#4,!7):*E-,>]Z@]*D'J\Q!LL^(W M8J_L\Z>-.G:^$;4O0;6'W*7Y9%@D@8@II(DZ%_+DYBUQ< +#( QBXD0>CP*C M'=P0*>9&!M=X13=UY():[5M-8%LFOM;!<*\V:'@T-V5C@S[V[JN1OPLV:,&N M=5#_5&O1'$6!4?*V7H2DK?W4(!FFW3A= M/!#NFBQB8^!:L##3HQ3]5-W]T# M7C?^69^R*K>&-+^RU>I]EJN7EL)+/"XB!G'(%,N&'L14_I7XF,8.XT$4:GE3 MO8[X%E4@Q<-]/[=2I2BJ4, ME&:;ZFKJ-ENE*AGKSFRE)&0$$ZJ2T1"YWKD8XL159=?<)"!)Y,:8&:UW6MW. M;IW:/#YBN6=6%+-3 .PT *T*AHN7WB!H+CK6H1U[L>B'N#TR.H+1L5FWLQ4^5;L U7+'Z M!D-O>;$$\IJWQ:Y9-EE7M>,?<> M&%!B=<:%5TR< .1)($/L9-PB)PP4F?=(0R(EX@H:F+=O74>"@3%_WWX;M2E5\Y._I:K6,'=?SB8M@X' !$<4! M3 2.8,BH\+C//4)=DRUHV_#<9EDKE]E^<0M32,(DCK& Q/%]B$08P-AW/9@X M2&&X]AV,16*-[3,%(@U MAOY #/6.*H:@,C+MGYV%QFHTGQ;ET7E6I\($4:<1)!X-(0H(B'$(A+0]9+8D=:8&[EF_@5]OX%*\ZWE)WLH?B^#\UU?!]MJ&Y M\>9.8" E_NG;'\%.:/VS\?/XG3\FMPK=R+S6AYIE!U C: 8=HI]O?;+S=&U% MNT?K^B\-3FJ6":0#W0"T01C3%& MB9&)V-/7W"9[+:H*!I#"+D!'W&%9N_M@UF, 2^"-3 47X&9,"QJ(6.*'OIXF M)0H-E?<90^>5 =7;/F7K:UP\J**9[Z68U[C$19EG3P^\6,8.8.A&3B(W ME'X <1@C2")'.-CWHHAKY7,[U]'<2*,J%B1E!>FC?*)*TOI[GI8<9D(4(.=U MN=HR R+-.?CI4U9RX$::6\*SJ/?3B$TL1^:0%L9%5<@7J%D NJ):PLN@6)LE MW"8JTS88/[/*;!J@]-9DZWM_NFIL&EJ\J,.F\_R NT>UA_MMS?+5\WVG5O%C MJ7WG>*J!N7'D;^J,;/6LLJ7LY#2X9#P)E,;EH@V,QKY4K!+X'P4)7#VJ7"66 M;A//83'L%O%DJ]/='IY3[,6MX=F'S:8RX^GRW;I,R^K,ITK4TOY8! M2FCD>0C2F'-I$)%8;J28 P/J>.H0)>%$ZV+P1/MSF^.UB*"2$;1"ZLWQ4PCV MSVX+N(P\K\T@T9[*9Q3OF<3RS7H2RQ]VD_A4>Y-,WS/*M!/WW&,#TT^D*M+J M8_J-L_V2B9)W\S+][\IJ>U=?:_\GQ_E[^7$L'<*"@"(!J2\"B$+'@3'Q0AA@ MYGA>%/+8\XPR4PP28VX$(+^GR##AQ##X]8Y.Q@=U9/:H%8"5!@<%5E42HB=. MJWQ#'6T60"D"E"86,UA &,A$HIC4D"<2(BB"/*12!\3R1&6>?.=SDWIMM)/-317 /F(5=$EX(W MV971&*[@^E",Z)0:W0W0R6KTZ;B,Z<\_5;=4Z(HCIR$ M19!SXJD*?0[$Q",0.WY,HCAV/<]?KOF]NN6XN]#+>:]OK8\WJ3_> PE&/*UK M!%6U^!I)+?@[[^.NN_Q;@O&U_9UK1#^?1]2.O_,)B,;T=][O\O7]G4^ H.7O M?.I=\UN0-C'2C7B7Y\H!;A?'\3%=\P\E?]2I:*?3S(QF0BNNNBZ6 DM*SS;% MZKGV+MWW2NV&&"EE0*6-I1 C$^ &W0]H=3#958&)NMU; Z/W!KA6M!ED5/*8 M9@<84(IQX/K0IR&&* I\F$21@"+D 2%8,!YM#1SY]S"KE^ MNK" Q\CL\ **\SEIM3 Q\'RX#)N)'![T/A^()PQK1)UM@6;&S\V(@/>R QR*32H?S9Q MC[(Y=AI$^THC,C)#']FR+,!6,57+#=2J5>Y8"] .7JL>4/J!(_NA5QI(@]7A ME09THF5E^H$U6Z)&0+]W;;/9WW2+X@@HO5A-QVA_V"&>W(H\9NLO*OSTKLN.5Y%1(FNUC)_["E*W"<. Z#)%'YI+S A<3%'&(_)$0(0D/'J-:V3J=S M6SZW@AXO[V08HZL%N]X9GFTP1U[Y:G%!)>\";"5>J$)(=2RLB@"IQ;9WBF<" MDJ53/*TN)SW%,P%A_Q3/Z-UA5/26YY(+57F:3UF=EJ5V7EUZ ?8I9A12CU"( M"(I@$KLA9+$?4YIP!S.C-,JG.IH=Y6SE5/5_F[1!9QQZS9#58Q@;>(U^XF$. ME3&)G,/!$G&<[&92LCBG[#Y!G'U^&"E4I8'5>6G.'_BZD,U+ RA[Y+^MI?6S M2O^;L[]D*Y:N[W_!Z5J93#?KCE-VGA;RG][*OZ[OZV)DGWAY(^[P]R7U<8@= M'$,G/]01E>I.Q$ MCRQV64FJ\?R"U6YVIS1HM :_5%^!4OR/"T"X?):#*_9?FWK<%P +^6F"NYY1 M-R;CL8?$$IF/)N:DB\'88.\O)J/W-]#?OZTR]^:Y*9:E/N_W.?_'1I4.J5)S MQ"AVA1O&,.94&JN4 M@UN&<60R'H3@\-*2YS&Q76*RI\?7*35Y'H*3)23EZ/5Y*,"5A.UVX35 M>FC2 %%>*6AI.&BGPYDN:',8_=8QZG]+F=SP2BYXK+P5/O-O?+WA*G7,N^^2 MJ]9X=;TI2KD?SC]N79R)YP[M;7XDV I;>UZ 2ESPDQ38-+U\/\IZU&8-N]'IJP>V\X[UQLRE MA8LE=NKO:U(&TE)[GV7T7C(/*'LOM;OA=]E?TVQ5L=B-^(MDK&MU ML9T_?\2_&V3;,VUW;A32R ^VH6=,KNME!K8ZJ)VLT@(T:@"IQ\+(7V40_/V, M,S;R(Q/0.* ;!?@-16]0L)]Q9Y,%_@V%H1L$.+B-8?;085VA9I%V:.3[.$F@ MY[HA1"%B,'9=!H/0]SR"(N2'1GO%4QW-C<(NJS-V$DX]F\<&2".SS9'"82,8 M.>> L&3?G.QF4M/FG++[5LW9YX?ZUC[EG*9U>$["_=CW8PK=6%7Q M5#T2& K5R!._*Y9-?]E#9:WYR'::GM@O]E"I0U_8(\\,3K(CK8)MY7F5PJ>J M[J0\7X+8C;GG,2A\E5LG3D*(&?=@$-&0^P1[A#/#TJ&G^IK;M*Y%!5M902OL MP I+IT'6O1*S MWH-UX#41N2-><<'O:2Y9SL:>H<.>=4/I(:Y^PKE\;2;%T$ MKE7(FIR;>/4YO7\H[[+/*FPG?525"6Z$*'BY#&,J8B<1C>^B3[CZ*8(,82HY MQ0\98@.2=0T21FO:3)^]ZY=.HRGZW_T M94/^B]-2G7O\B@OE2?Z)EY6O4J?(X0+L-%V 2E?U0J,M4.J"F_[ANB @: #< MUJ.%3&1XI5"B 3"=CC,:TM@E]>Y.N%ZUO@![KC0T\BGF+I+6&&$0>8D#<2!B M2'GLQPD-7>X9^4(-D&%N1EM;YZW/U[#59$BE/+,!TF/4D6$?F4]U$)5&K[9E$6)URJ 9QQY E-%&)X:4=2N,$TM#Q:8 =@;!1 M1.9 .>;&FK7CJ#J[8DIV91NI\RHY2;%*]GA!H?BA Z7'G!/ /S)[MAJ 1H7# MHNT=#50NBTJW12?RT1YI7HBF)>(<*L6DY'DA5/L$>FES T,-7V;^D7]5D[VY M<(K#A#$G8#"BKJ]BUQF,0\F9-/%\A%$81(Y1'?6^SN9&AP<)LQII#0,+^^#5 MXS=;H(WO07 4KQ$N]G00L15(V-?5M!&$&DH?A [JO&/&&T5>+M]MU.56\Q&3 MB(5N3"@4$180"13 A*BBRMCWD;KBCUPMCMAO>&Y\4,NF-_L/0.J?Z9>H/O*L MKL6R.(=/Z=HW7^4[G;DJ_[:;IP?-33(G3RG1SK^3_SYLC>XD'\ K?B,Z<2/+ M((@X=W$DYYN((/*%@%@P#!WB^1X3D>"1UQZEZRW2/;T-."L?>59^;C.$_*02 MQ/P1J 0Q*C],E1%&VL_IT/"V/LSUUNU+<9QF@GIITU=90>7_1UGGE(C^]^C;P#G_GQ7439QZ'H@;[TCH.K1A!6H1B:)%J7F7K^2 M<@&N;D7Y>PV7OM+HG?/9Z7C"WY6_SC&UH65RMV1>>?TLI+^J* MATL?"X\&201C&KH04>%"D@08QE&4,,PYBHF6UT]O+W/C@T;0RENOD=2P=&8_ MJ.3BK7GHX">'A &Q>P< M:V^RL)P>9;J1-WV/F<_2NYQ=Y7DGX^#]?97"Q6"V]C0QMUDK1=H'U?GY:@FED>?M78[9@3?:3FAP!$"K$UH#I4$3NZ_=R2:XAG+=B:[SN*UR MM^H$8"V'17:S9+$;NB(.H.\+'R+?C6"2N [T.(EBCR2$!';JW'8Z'7#L-X6+ M;$?"2PO;=A'6V[9?#MBKEK+5PLIO+ M?KLJ2+M/'9!WV&OK3M!F,+[-\BI$H"SSE&S*RF\KN\75P19+?.XS)X%Q0@.( M0N;!!,>J;$82)X2&G$71LLQ*O-(CGY'E-;)SME*/-R559ONV-!Y7#L5,^4;V M9[2WD\7>U@>@1Y$S&M9)-E0O5&W/2MMD]4=2+W8MMTX.^T]UZ0*I_ (TZH.N M_NICJ1$8/\F]Y:$:.=>]+6EGD?+>,O2ZF>]M=SLXPQ:7+SUR[##$2)PXQS+-UKL^Y[9A;D1> M[21N0LW7]^F:1U[0"#Q.%BY=@.SEXCK; MX]09N70A.)*72_O582PD>4Z%=MWFF2I$Q]X\_U:HV[?Z0EXYX:H\RS4WDJ)* MV;IT"2/,Q1@R7V6FEM0$<1!%T'%P0'""41@:A@ ;V7_LQE%#1@7/<8:%^V1"4S9C178K?@JP_1/2@.@/*.V2H"=%N!KJX=% M5AL.HB62&R# I)PW'*!]"KR@)?/+B _22I1/WN7L-ENE5#8J^Z6?LO**94_5 MD5\;\:AY-:'=X-PHK1$%1YT93);]CL<;^*\ MP:OJ+A^7@'"Y^5NKV:,RD542#,B]O \P28@78=>'F&($4<08C&/L0]?ECNMX M)/%XT #\;JWI;&X'WK:[2<#EDH=LPJJ]F;X(J/%WSSOQ0".?Y7S5)[2WF:9Z MOXOILU.?4/)H4NI3SP[T#E^7:1OYO3OU>_>=KC;2ME3Y]-5QX:9LDLB^P[EB MF&UQ]J;2-_$P"R@*Y+;7#^4&6.7!CV@"8X\FGHH4XT4XS#&]T4]=2!^."G0?'X=D9:C['0EW:#LG2^1TZ2_ MH7B,36/:4)@3T3&5;1'*B[:G)89C:AU,\*,/79I:4VZKI;%7^8%1;V5MO<,&9LLCXNJ@3)N\<[]\\[QZYQ<_J5Q7YOZM2IG7$ MK1QM[A[P^N9)-5'\(ILHBP_KV^K\:!GP.(AH[$AJYC%$S".0Q"R$,:',3YA+ MD2M,F'HJP>=&ZY5T*@_$T"1UDXVX'J?/<1Q'7@ J?6"E$.@JW8UW47?:W><: MS4&E^@+4RK]8/VK?S%+J#QH %J"&0/G!W_:?XAJO&U,/FZ5%9C*Q)UV1IAZ, M_>5K\O[-UCIZO_X^7,9&DK_R0M+N>YSF?\6K#5\*%A$AERT8Q&H]\VFH2GZI MI$34#8,XDG]HG?^.(=SR@_ZD_S$VZP]?AB@""O[,G[*\7'H4Q\P)7.@D M6-K-,:60D!A!/XP<-TS"@'.D,V][^IC;Y&W%!%LY02VHWASN0[-_(EO":.SS M<&-XM">U!@ ]_JSR[7I2RQ]V<[FOS4DFM(92[:S6>?322[NKHN#EKF+4#5FE M]Y6AH,I&E9M\W2FZ1CPW(+'/81QZ!** <$@P1Y!ZCG )8CR*T47U\ R$T9H! M/W8]/).A,;V!LXWTY'=OE0*#:N'M=*T+XBEMJXBD15,0#URI),U%"?:[&^/> M;L! 6+^Q,Y'AE>[J!L!T^I9N2&/#>/8Z6U?7?))Z'M-UU4<3FTQ%E'B"(N6 MJNKAQ1PF3N!!/T#"1T$D AHMO_&<9+HT>K(ODPG<[7&\>=R*"CJRRCE:F"80 M.0VO'A]:@6QDSCN*E?T@[[-06&*=T_U,RBQGU=UGC_,O#"QLU)ZO-)D8JWN4 M[2__DDJ"RNG#<[/SYXF+(S<*8$Q9"!%&$20)8I!'3A)S$A/',;J&-^I];ANS MW3DUV$I:^>%\NOKKP(,6L]'0(YG1,!Z9>"Z#U[Q:TA"8;)5/,NI[VGI*0V Y M*+ TJ)&)79+J2G(WHBXB=[4I'[)@E%+(P%#$600"18#).$R#]PPEC( M!8F\9!+?HU,2SHT8FVJ,>/.@\O2IRR"1Y>!>7<:#S5I%+7=O;\&3?/F"LIGV M!UR/5U]U&*>XT[W,Q^B@..=.T1GX$9T;@]=V&#HIWX_A&70.7FLN0&<[&K:( M-)ZS;WF1WM?&=A7,$GI!$E&J\A0%/D340Y"@V(4LYHGG^4'(W,AD)3C>S=SH MO'4K[X@Y*##H!*AZ;'LY5"-3Y@"4C.FN'P1+G'6BDTF)IU_1??8X\_0 =[]W MWRDOE O]#2FDV"5OLPX_7TNBN>?%,G'<) P#!#$) TD%R%=I?@5$W$&APZC' MJ*_MP'>VN[E10BUPM1O+&I&KC&65S"IKKQ+:P'OK/-[]+&$?Q9'9H@-@*^TV MV?@SN!X!0 .'-JM 3N2B=AF@9KYFVOCT>H^=;V4Z?S!MC5YX>.F_=<%6GIRW M"LD)#[).(?B]JO&?N3IID+]OCU4W>*5.5KVE'^,PCH, AE$B-_LH]&#L!!BR M,'(X#ER*L%%(Z"OH,+?%HJ-"M.$RLP?1'$J\S1$5 MH.U]EK_--J04F]45I96ST&=.>?I-):?_G*U6(LN5I$N/A22._03&H>M"1 (& ML5P!H7 8(7+GX[*(&B4^,95@;HM9*RS82;L 6ZVJ@^[KG+.T!*JB!?BJ5 'O M:UU,$ZD8CY;>BC7J&(R\WHP#OWGREJ$0VDKP8MS_M$E@AL)SD"AF<$,#O2$D MZY;\8_I-Y8>6W'R?RN8K=ZWBZE&5\?COBN.;[/DU33-U_OP^+2A>_:>T;)>1 MAQ**L=P\<"PITZ4"$L>3/['8CXD3<->G9IY5%J2:GP_65DQU120J08'ZS@T= M)BP,F*8;Q;2#,+9S1:4-K-0!.WU:MU:E!:VL[XYJ"_!BS&J]@%+,HA>&/91M M^698D&A:CPU[$![X<5AL>DB9WRK5N32PJWLC[J56K6>7C""+] M1'89&"/ST1$G59\8!G>%TU-6'GWF HOB^T>?<)\IMWR[*K:=*Z>;W%: M;6\-:FD??WMN,^_VW0UHQ01*SKWSJ_Z\L[J0G9^2EZ,U\M2\#"BC6=J/Q:#9 M>J+)R69MOTK=V7OFR4L#[7;^EA_3-?]0\L=BZYD8 '6$7G9PCX*N2&%0B#TYA>0QLO6V&-0A'9H6+T+L@ M7JT'%>MQ:J7XLQZU3\>9];UD'I+_;EVFY?/[=,5KI[ME$"38<1P&>:SJ M6[N!*GG"$QCS$(N$!8P&VK'X^XW/C2QJ^8 2L/%LU8^^/P"NGPDNA6/DB6^ MA%&@_2F5!T78'S0V66C]*36Z,?4GGQFVQG_D<@?.;YYXCE7D\4>.Y71(,4E7 MLI?FWJEXN^%70LX4M0=_+[EA&0DG\DGH0"=2AY-A$L#$10[$*&8)B0)?1%H. M;!=),;=I?O? #I4,]-_!"#%W.U#UP$$/B(B+!CV*?NIQB;N0U,T2( MN1&/TJ%3PTVN\ZT:4&0Y++#RY, O/#EH["IT05L#O0T[5\(W8O_" M>,E=FE"YVY0[3B%)D@4))"(,51Y6S 3U/$J-#I_[NYL;'7:E5=X4ZIC8&IC#6:+, MI5''OJCT$=7!=L>'>BEZEB/W=P&":4[A])/;JR-SXCT]5N:+[4 M0U/)^B+@Q6(&:BU4;&6D[N]LV@S56HH?9*S6>VOH==F7![Y:J:M\O'Y>^L+W M Q%C2(CO0Q0E'&*NPBHP#R.?.D'"M+:%QYN?&R$U%T65B*"1T?32[ 5\NM=F M0T&9YN),#X\!5V?'U+[@\NQ%A3XUZAJ1/J.PDJ7SHN18E< M42&64Q )B2AV(&,,P"9 +HR3T(QHDB2<\(QH[[&-N1/4I6T-:WPU4.6L:,1 %:F0?FX#Z/NQXY6$5S9*JX%$AC\M &QQ*5G.]O4F+15G^?9O1?-,QZ6"VB M]'GYY9>W2Y)0#_,XAD&LBJQYB0=C+PB@ST42"-=GB:/EV-UM=&[4\45:W/@I MRSEXJPJQ:/I[OH"IGP:&*C_R3-_JO6@4MY$4[XBJ/2=/[>/UO&W_MINS+YJ; M)@?>$06VF>Z._=NP%?T3_[U)7B$'X3;/UO)'6B?#O\U6*7VN_[SCW\LW4JR_ M+XF?)&Z, D@#)%3V'1_&KIR7,8I0&$8(R3$V6>!-!9C;I)7R@Y=BFRWMQ@.@ MM]*/">O(=* 0WU$-E_-0]GZ8N):FGN$'" MG4^#BT.J9 .?>5'BLEH WO)R5U/NK?RE;IZ/OC;FQKD=6<$+88&25C_-1R]N M_<1@$[*1*6$@6D:Y/G2@&)3QH[?AR?)^Z*C7S?ZA]?PP8^RW-4E7*\YV"1.+ M-DK+B_TXX;$'1>A1B%C$(0X8AQY%B8A"^3\O-C'$3GZ"GHTEM@?,*[]L!&F\,L $V*^XZ)'!5 MPC"6/96^WE__CKI8,M\G 4:)7.9=#%'$ DA$[,,("1(Z/(Q#S\CIQZ#ON;%# M*[IRS'DA?.6;TXA?EX8'7RL-#&^33<9%SW08">VQ[YTL FU>U\,<,EOU. QZ MGK:.ACDD!_4O!C1Q:1;#ZNSC4Z9V1GA5IYY:E' M-1?)9#*=]B4;;V8I(:LUG:H?^$Y<@$M ^'VZKHIX23.@ELF,HRX;Q-#UB.>X M''J!_ ,Y@D""@PBB(")Q@.0?;M0,XKLUF^40MG*]T@!R%?7[&D.GM_Q,-A@C M+T]*L@6H1J(CX +L9 ?U([7Q_.*7W3?LK6)6D+6TRETFRZ2KH!78]E=).XW: MKY!$Z>9Q4UG^W3002X*8DZ@,>PG%!"+. \FZC$(G&?% MZ>.$)%H3/*DG^($\XTWVCK0OZNW8JX1T8F#T.'4DG.?AW&",O=6*1OWP35# MZ(0 <_&,. .027FB,RT9>LNKZMY5:1HG?1$UJ^N8/&)1^!AP9ZI&I;X?RYP[*2G:P%1Y(Z4$E/O@X M,M0LDS-0_DN]]+P2Y"^$^%&@UX_#& Y>O=:H!JH%Q'4)Z4Y39(\_;FLY%>U"N:D$_I$_%K[RJ#L$]@9'C49CXV(.(1!'$ ML91J :4/T(X$[$\79 -N-V0[1Z25VWK>G8W%"[%S1N^NX$::)^ MSY81PH$(O 3ZD:N21"$,XX!YT LCUPV]*/!\HS@7P_[GQNKR(PQ&3!$E =<[ MT1@1QI&9?5AZJ-^S5TH.M/J31SFW5<);3S! D@3T0,$?4=2#RLJKSYA* D"+A>ODJ-ON9& M57&\<%1RW$I<**2\X*D1V,!@.H.OAO%I#[61F:D!K)84*E%!*^L04_,,<@86 MICT$)S(L>Y"T9$;J0=)K/9YI8CJC44^7%[:BYBOF#O5?RK_?YO0FOROR=T69 M/E8?RJ^\?,C8+J6 IG>]3EMS(\TJA;+\6%/*)6;@[LMGL),=U,+K^]MKH=E/ MH6, .3*/ZF (OEI-Q&"*TB /?:T.)G/7-U&WZ[MO])Z-ZG7*A78I7.*1A/F0 M$QY!%/,88D;D7R/LA7[B!;YC%*5WV,7]W>%EZ(Q, M#P<;O^L^8"ZL/-?5?91J=PF]59WESO5_G$0W&3JTR3T@1./,$"&E'HMK)6D;1[RY$4I5H?Y;77;#]U1%YH\&K9S)8 &SDM;^9^4U=M%K(!:C%M!B\T(^#K;"$ M$[U,&W#0K^I!*,&9QR]-1O IJ_+A\TX\0M79;^M4.>66Z;>T?*Y"A'=G>MP+ M$H9"'X:>)W3X&"<=+I6D+6>_6"(+*^4#^$"V$YG2+BD MT8$?&[+5TPTW%Z08\(;'5Z@M0*P\ZVCIAXV&P9&E.)/:U-,O%@')@O4_<_S-*YS3/*.2O> M2P#56>ZO6"6B*E7HSG6V6JG"C+++&]&M[Q9 -Y+[ MS2!R8A88Y8P:(,/<[(]&Y)0750!F(;6HZE4.KJLX9%ST%I>1T1YYG6BE!VK& M@_IZJ]6@@GZG@\)_E.*-%R!HB;*'2# I^UX T3Z17M+4,$[\)5>75WDF4N4^ M%'N1(USH)UQMT (,X]!/H*0XP2,2A!YV38J!=-HVXK )*G]4HH%'G-^GANDS MNH#ID=! &$8FEQJ!6BQ[='%$5TLTT&UYTNE]1*7]:7OLD:'WO758VM_2\J$- M5=O&=+29XUW'H0%6Q;BP*N^Y&CB/KHJ]"8&VLW0V8"[I0M[-_N:I/?:\[G3_EN]-=VY:GBY:?R^LMP\-;\[./+):"(HX4*Z4"H^F9,$8B%-C<2/ MN>]EF1>:$9=;\>9&<7_G^<.C]'[A[0M?XXN8C#2\)N>^$T]J!,> 0YL[>V-VPW8JK@W_-,<#+H< M .Z.C0Y? GC]+=-J+Y0*B4N5('BM45&5[)U.D/H_C+(,X$DQMJ840 M>TB:KUZ$O(PQ[B&C@/03?@I#32J]#IFQ^7 +2AW8[2X% MBH;ZKMCH1 _34LIY%8]X8>!1L\G->+YH(Z1?[W[21[7+_U4.]"),X]C' D.< M2M,.^7$*,Q2%T(L()C3._!1G.C/[7 >SF]:MC* 3$B@I]6;W61"'I[8+:,:> MUV:H:$_K2ZH/7#>5KS;36?ZPF\5G&YQD"E]2IYN_%Y\;XY;9Z2HZM<+ M'K.8B2B!<4(\Y<_YD) H@B$-$NRE-%1I\KO0"/U]8P>BV<1N3+#M7/\J+O*S6=06W\;+):ZAOPT,C=E+[ >Z(#WLANZHCIC8.F;^8< MW='-NA;85N0:UWVA02NU0Q?.""577IU>I],Z>D9 '/E^9F_;T52/].HP+A4+ MMN:/LF79Q:>"KIZX(L.OO/HF[O'/A>^'F%*?PX0R E%"0X@1SV#*1!)R+DW( MQ"BTRK#_N1%7W[YHDMK3O@)UBOL;4/!*[1]7^*<9=YD.CAZ)C0CYR&S61[N) MG-V3'33"@U^4^+_>@*\-[/<#L!MSFR5XCDC.M/=)VS.[NTVYF M[S4W36+%$PIL,RB>^IN=87'W]+Q.[EJCT&"@"2QJJZ9IBHZ.TPBF$D\ M8!"2V$\"Y,7"R(0XV]/+ M]OE^)EV>+ZI[N!!??N':>M^].R32O?D;9P^JPGAS7S;GY8>\I-* WJQ[X2A$ MV>N>,K9EPBT&1W># M>AK(1]^9/H5VO<'2:@)VJH"=+H[SN[I$U7F=<@M1WJB,N3UHYZN<7]&F9?G6 M51TK\+ZUXKI8T[I(H@HTK.,,=]TNJ(B\. @Q3'$40X3##))(%0-05_PC'# 4 M!"9D:MC_W/CS3GYK5D\Y!8]RJ#@0J[4*O0*TJSIC6++5<##TR'-$B$?FRU9R MT(F^+:UTT]1KO>G%PO;HTF&M5COH7!5J->Q]VBJM=M D1T MC-,PQ5RE_:Z_+2;Y\?M33*#SZK1S/T34\S+?1U $J?.7*?6*^?LDI/YV59)M@K;X,4=:3K?]WE<#_ZZKZ!Z]4H=^' M0H7V+$CJ9RCT!/0(4SZ-%\$427(B$<5IZ),HT2MP-KJD<[,R5'A4)UM-:=M< M1_Q"J,C$(VRXY_V6XS;V4=>IJVF[5#XWO?25[8TUI9#\;05>)=GN=)*$^[3: MN"38T>%WO4WO7,ZWV>8?"^ZSQP2C=6A1^_+K1IFZW\1OZ]7FN527K?.B$_3[ MZGG3U Y>A*''2(0HY#3!"FU0VU$3^0L!!>/@.3()-P*#;P*TH#8R@^V!YO<1 34HFND> MV(F*9[8 2]?@8>];>^(;^Q^.JFF:835855.SJ>FJ:YKIME=ET_!5F^K%!S'[ MNVC^^BKD-IW=K9 L>?_72A5,+M]QL5KS>SD,=0'ENL1U@^L2J8=-;P&I!-!4@SSI)WU\UO;X#85L%SM?B- M,Q3#I:?==CEAJ>I1L-HO;3U.%^9Y!#ZT$^5>OKK OL HRS)( AI)'TJ$,//5 M3XR&1&#A4:)U^';8\-R6Q4XVH(333Q>PA]7PNG8- B,O2GK*&V4%.*6I53: MO88FRP)P2OS^[?^3?S>O.G^/B32FUY_SLCI(S*59:OYL W.;7ZV@0$EZ VI9 M],HY0VCD^=<'9Y0\8EI 6-6&/]_J9 7A+RK6KP)_^6'+L.>5'-XJ MI^_5]OKZM0W)\+%/4" 2&%!*(/(YAEG*$8P#$I(P\*/$-\JN>+*7N4WU3DAU MP@MN-]7C:FU#-/IJ>PJ?$:Y # +A*AKX9!_3AOD.J7D4OSOX ML,5.UOV:XW*S?JWO4=PR5B>;P,NF(N,M_>3SP8((HADB$ N+ M\V%"TB1( B\-N-X=1.TNY\8*.SF[(L%K_BP;?ZQ/-8U+)QE@K['=Y!S1L0V& M5MZN^&H/W*X.:R>U,WV8HR0&MQBT6MINIT3(\WV-D3, MWC3?Y[@K*E7'@S'97-G^\SDON+\(,0V#**8PYAF'*!(Q3(,H@,1+(H\1DE!? M*QWJ8"]S(^A&4-"*>-/] )2PX%MAL"ER'MC+.R1.X!J9?:V1,MI!N8B$U7;* M^58GVUNYJ%A_H^7RPW;^VAZYU#NF':.H8)4O7%KE M:5L[Y/?5?>R1"N1 MP9^-T)H\I VZGN7I$LJQ>?TZ%,US*&I"XRIIXJ7NILV2J*G\45I$W?"NWA,",AARQ+,?%#GT=99)2<^D0G MD#)HT30 M0\_:3??O[0[-^]734U[7I/[!%8ODQ<,7^=^GS5-S#;#Y>\79(DO3D =)!H,T MYA#AV(>$Q10&<1PG"*4LC7P3+C"68&Y$\6U3E14NF$KTU6UX-6-@F"C(?"ST MB&14A$=FF4YVL!/^!FS%!ZW\[5U5L-7 '0E9@^>(H"K:S'NBQ_>9>AI:^^OTT+8"\#A49WY87[P%Q SHH MSGQWP)^WI*S3,+ITT=]L)%UM $ROP+3;"V\V0$>;%V\GB=V*^FY3YH4*)5)' M^&UEP)]YN4A$3*4_@& 61UAM@'@P]8,0$A\QE,8L"ZE6KI@+_K$!#TY M):=(20VW1,_AJK=V.$!K9(*W "_ X(@=S_4R*85=4/609RX];GD"NURN M_L)2WH^K]8?5AE1BL[RE5.U(E#\XY?F+,N:;A,?5(O/#5+"8PXBK\Q*1JLHV M,8.^GT5I1A./,JW@&ZO>YT8<6^%5(G5 UYSE55T/3YTL-H6&#.,"S09#\YAV M+(C'/K-M900[(6_ /N3O&\@_UR4(WU\ W/P0UP8X5R>Z1GU/>[QK \O16:]5 M(TX.?KN,ZG[H41S'4&2^@"A*8BB9+97&#N;4RY(X28VNI9[L96Z,=7BT>=61 MK]&%U*OAF?S0U_E5U$$(QCGV?8NKJ(-J7CCX=5Q]JPE*"$@0"I)*F\5/8XC2 M+(88$0HYQXG 81B$*;$KJ#7+\(Y>U2:KP(Y#^/3F]Q6@C#RS#?"XHB35&#$< MAZV_4>&HPR@[/M)8("NI>YD_S2U]S9B&BZ/>/B/+93U(.XD1_6"ASC/6H$QQ4@NG*K+"28 MUNFRA^C();NB*3M";*KM_"X7P_JXK#O-7="0"3^*"8P)%Q Q0B")8@$CQ#V1 MB013;!20>Z:?N1%;6RIJ*Z?.^;81KGK4Y0"MD>G)!BAC\KD @R.".=?+I"1R M0=5#HKCTN"T9J(V@U?KU!_[KBVQZG>-E65?B^L%+OG[AY8()RA(_H#"D3/)" MZ*60J)W4'EZB-3A6ML#= M8;>5=UN)KY/9)7'HXN.,0RYV.#&=Z )PS"S:;YJGO&JO%K[Z ;G/JR5?,%\D M/O,(Q-PGJG"&]*U"GD(/A:$?QSS&>G< 3S4^-^*HA5+?=S_XA?S:78753$QZ M$KUALK@6DY%IP10.H^15Y_2VREEUU-ADJ:K.J='/4'7V&=LK+-*4V%"5[;]X M4 EF;@O6SOS/><$_28.C7/A10E.&,XB\D$+$20BQEX10U<$129SA(#2\NW*Y MT[E-YSV9F]1)N&#=8@;^5(*#6G)#UT%K!/3L!->XCDP)+B"UN*.BCY&SRRD: M74Y\*T4?A./K* ;OFMOJG[*-Z%(JW?>([]. M?IIYD/$D@(@E,<1!E*IZ3:Y7TZ+ 77CQANXKY5V/=WOLY7[%-!57Y2_H$W_RZP'[&0I CR M@'*( E_ZAI12&/I$=HV\!'&MF"'WHLV-5=_O;BVH2_FY;;8#AX.GQZQO,R0C M$VY=^[2?GVZ_DJ;2;/ .1*,@Z#0$OW0ZGJ\H8A'SZ!IX9^&2S@2;.-+2-:#' M09K.>[@V-/MSCDF^K.59"'6:'\4(,E]E=/9% K/$#R"-N2HUP4(FC-(MG.QE M;L3;"TM>ME*:U@<["2:G2F.L3#3:8L:8DN=X*"9]F-7,UT=R:&L=5=F:Y$;/1%9OO-^WSQFW=% M2/P)[9T'QO?[>*/P^!-JG@^2/_6P^7;D[<-#=;=>JW0#7U?5/WCU@4O*>LH+ MSHRKI^JT-3?NE#*O^0.N.)"2KPJ^VI3[&4>D)D"J G:ZZ&],:H%[>6_2-:XC MDX(%I-+9=UV?U00TJ[U*K0XFVZXT4;>_8VGTGL5-G+NRRE5X$9,6H>"Y]/SY M#_E1?OJC]@]YE[I$68QWWQ8)9HP)G\($DQ BY 604$%A&HD$!9E'LRC6OJ)C MV/G'NOAE<7S$=G&&J&AORD6EKA_9. M=/"C0[N3OLLK-0':!K>(1D1]HNM%CM$WNX)D"=_@W233-J>[M&2I[=YM)MLV M)L[;>/?/C?1(/A5JU[G>B?Q6/?+U_2,N6O&^KEIQ#])E_2:;KCXHC7"^KHM4 M+00)@M1+""0IIQ E?@HSFLJ?" FS(!&Q[X>+YWJKX_<*KRO-T[09J&9"!X<* MCNB(=_(#7"I7G/"'O*@36LL/C1AUG6.V6B[QNE2_:HKJ:98\GM,(+ 3ULQB' M,?12[JDPM!AF"/D0Q3P+,0K2U!/ME^NN8/\W?[4Z]:;[8O&"_=_XE=(\59Z! MJ#,R ATD'FV 3UD0 T-J"0VN[2D6WA.)"6M(0(*(Z! :BI;SB AZ0AC_M8I M2EVJ]*^1M'2$0726QG0,V:ZY2'J/?W[(2[I3!E7)J#R&?43],8IT8A 0-]S6U+HKTG*64%.V&OO%5Z&F2]Y,-]?Q3KMNK*WU9+=8E@5WRE%]VSSDOYIP]UM&83Q",Y MB]$K\9+;AU&.,?1Z1MD;#^C(I/OM_:<;H!5=N=,7M KW"U?= ,+ELQS&DQN>($!\:K6-V9;>XW.&UVH]7\9VU._]!55R6 M+GGGPH4D"#W*.<2ICR 2 8(X810&)$U1EF#B\VBWT?B#+]71 MM+I05-;=DMX^8[F=#@0A[L5^"L,PPQ %F, LC2+H!P$B020X28P*D%PGSMS8 MJSGA(/LG'+U#$-L]ORL'38_#IAN*"<^C+$?!/.S:"7BNXK.O$V;:0&XGP!U% M?+MIU3R[U5U1Y=6K-!,_,=EB+G):]_MU4^>XQFG@)V& H8@#!A%!$20)]V'J M)9XO@CCT8ZVB)Q=[FALQ-L+6F_G[XH)&7OT$6,, #S.=4]C&MM-L$3/*D:6% MAE7"K.&6)\N>I:5@/Y66W@MVMM=OJQ7[*U\N/Z[6TJ]I4YO3UWNY-)7+NIO. M#5V@V!>A*K- )%] E+$88A%*8RN+28!3221Z(=WF7<^-.EJ) ?])']42W@1S M-S\;[NX9X*]G,HV#ZLC,T@E] SIH.[E!3_#^KIL[,\D<,$=Q@#PF MW; XEI,2$0&S),V@=,20EY$0>\BH"N6VY;EQ6"W8#:!2-+,9N<-*;SI:(3#R M7&R5?S^DO/%$/%+4T2S@-1AC;\C:X: ])4_J/30=Y0N]J2@_[:;A?EN33,&3XG?3[_0?;2UX M";W*--0&4:F<*AG/ A%''HQ]'D!IGS*84HYA&&0I8:%/4M-B'D=]S&U:;D4$ MZZV,IF;J,9"ZUNI5\(QNM';(_+B,C(7I>E9W9Q;L<0\3&[)G53RV9\\_:C>] MW^&E:N_W1\ZKSZMFW_+#ZDEZ_PN4$A1F80A9',E9GGA$+K="U!9O%#'.6&(T MR\]W-;?)WDH*:E%!)ROXLY'6\!QV &&]Z>\&MY%9P!8R8T*XC(8C7ACH:%)Z MN*SP(4MHO&%'%A_S0C:F7<-7C!P=HC4P.-D 9$\,%&!RQPKE>)J6$"ZH> M\L&EQVTC%CX5XQ&QD4K"%RR)681B+*T(5 MSC0\<:3"L'K'@0H7GK?=)Y"-\K*2G@G/7]0%C05&G*=I2*'( @X111DD4>C! M) A2Z4@@WS#N\[B+N5' +:7K#6<@;R55FP6MJ*:;!4=HZNX57(/1Z%L%+2P_ M+L-BL5-P3G-G&P5''4R\3W!.P>-M@K-/6@> XS;9J/0E5'F)%UYL>%TX9)%& M:9311*[W7I1!1!B'640HC&A",1(DIMCH]LE09W.;\/NR-C57:FG;JBKF,=OG M<=8C %?HC4P%]L#9A%E?1,1=$/7YKJ8.D;ZH](D Z,OO6*2FW6:!N/N)GZ0O MHEK_!\?K\H]"MM#[97WSKK91U.8XRT3L>UC%O80A1)ACF 4LA,*+TR".T]2+ MD7:&6CL9YD8W*K+W54D-5L^\4!D(^$YRE2[K!:]SE0:ZPC_5+5B\J1Y7S<7$ M.I/GJLZ/Q5OM#%*J6@[A,&5--#"C&S7;G#,]:4&M ZB5V/M]DZ+L;K(A,$AN M._Y03)3C]OZ1JQE03Y5?RE\!X?^75(Y#Z=#=(U7O] M274\;?[#43+S(EKV?1TJ7&OTWTO0^Z539FG'[I7P9#U1:#'U5*^\J,J M##(-G7Y[=@N-DA+TQ)3F6;59%\;9@\Z -;PPN,%I9-ZWA<@H^<\P"E9Y?LXT M.5E*GV&5^ME[+CQIY\IV]_8^KM8_^+/\,CSBLKGP][0J?J]4H9 DB9% 8.9 M3Z5#FU$/9@BGD/ TBF-,,4=\4=25-S0S!%_N5.N+G35?['[7XWV_=X(J[ZS- MH5 J6\!WJ;FZF1GL.U)\5-\VR6H*>V*;'9X.(ZQZBN<)QFJ,T:P@MCM1TD+GB M8&VP^8F/UW14/3YDTWK+HHP<^Z_[U7>^4@D*/A;FE>-.OSXW3MAE:@/W*_#] M[MM>CGAU"755%:M*\U!M"+?+CH@#R$:>_KIHC5'\;1@PUW\[^__6/@BS2CW X@BWU.W9:47XF4(LBR)*$]%&(5:R<_[ MC>K;7.-X,:Z^\CGE!Q8,YUCS<3 MK_NTFWU[S4VS&7A"@>WNWJF_77D-_43^^Y1AS%@40)_[ J+ 0S -: #3-$C\ MB'HLP(:76<[V-;?IMQ7538V!\QCK.?B.D!O]O,<.-/M;VQ.4&#C?T]O6O'51IAH4\ET1 _83@7PR^89 M5"O#>F!V0Z;'3J,/Q,B\UEJXH[2K,'1$=G8R3$J#5\%T M2)#7-39Q'='/><$_5?RI7(1ARL(@]6$B,A\BS_=AEO@49E$J8NP3D5*MR_[N M1)H;J?83QUXNH7>08%9I!OY4NH%:.4-CS\$ Z['NM,,V,@5?7?10;\2FJU-X M!/);5QG<"?2O42/P"$!G%?Z.6[:(W-P6VY!+A2JUL:MSH.IRM"N)JGH@*E4] M<,UY'7GSKJZW\5'.F_KCKE1JY"5!Q"-I#0'JF/ M(=S%S;8WG@4QMY6[S13QC%0NO4*T32%:7;J@5H_4"O8 MQGXV*@*E8_L;C1JSXX^I04#H&X[M1)&BM\=UH,I>L2&F!OEI-\BX'N3J,9=+ ML0HN!613==6%A!2J>JQ_?0.$&ND7I;2K:-&1QF(PC-1UG]/%EXZ$UE[@Z5A] M6.9FZ-IY][K]\6\Y7\N&'E\_\Q>)=9VJ(42IQW &0\I3B.1'2!BG,(IXF'H^ M#[+,* >K7K=S6UMW1 RVPM;U@;[>_J==!@<]]/5\'O>8CKQ27@.G>9X'(W1< MI7W0ZW3:+!!&0!PEA3![>VSGX6/^TM#C(@ZS)&-Q GD:!!!Q$D.<90P&."6" M>Q&-PY%\A*T,A68S&U(>YV3$:T ML8_0=&=*[YJ>J<5\I+N]87S>\!CT9 L0Q5C54V8>1((0#R'!.*VD'02 ]Z*;&;E:F"L9^&Z M16[DY6(+VK8,YB\]>4$KL,.")_KH.+)N-3J"!T5IMU/O;9KVUT\%^RJ_^?LDI+[_PNFXP8CY-4<0A"1,"$4Y"F#&20!^' MV&<(>5&@E>=8K[NYS?Q.8/#<2EPOEF4KL\$FZ66@-?:DG<(W,D=LD?O>1ZX3 M%_S9"*QIP6E":+"E[!3*B7:/KX74;)M8&Z'!'>'+K4RW^:NMT=X^K_Y;]AGF MZ6K]O%K77Q]5$8R_5[F5UJ_O5XPO:"HX\3(/!FF$( I#!-/0$Q S$?B,XSC" M6O6N-?N;&P-O$ZCW9+X!M=029M!*#I3HYKGGAW ?YN,1T!R9D%T :9657@.> MJY+3#[4_>8YZ#65/I:K7>0"S"!.8)4SX M)!99DFCM,_4;G1M1?.$_P+6PFLC<[(4[.1[Z8K]#+* M/NH@!H[V2T_W,>F^Z*":A_N?PP];9M-L3/^_8W4AJ=K;22VW7UM&6.JG,8,T M3$(Y_3F!.&,("HI3C&+$/&%4,%VGT[FQ02LSV G=.THHK0]NM/#7HPW7J([, M(M<#:IYBTP A5TDV=;J<-LVF 0A'B39-WK4CI+KB_.ZKCS/AQ1D*("(!5C9^ M*"W[,(!"Q$&2^7'J94:U:?:;GQO)--)9D\D!=GJT88_(R 2A#X8Q$9S6V=&4 M/VA\TLE]6K'#:7SF*=M-OEO&Y+B7M7?_;2TYXB67PBX("404^S$DC*KJ<1F' M*<8<8H1CGP4"19%6_KM+'[4:VPO7VH3F#3S;PS^.KNXEV/VC3;=Q: M66S:#:-QQ6[=F88GWJ8;5N]X?^["\^;!$RK+P2VM-GBY?/V.<_:?Y8DJ ,9I M;\U:G1LC[*<*:=4 2@_P4OX'.%>(0C\NPQ#T8>88%^^1N<02ZA$RZ]I!:!7R M8=C59&$@=A#T0T,L6[!S/?XH-J7LZ=OZ4R'6_)\;7E0J 9A+TJ--D$&>YL;@[7"JD5Y)VZ=QNA&_>[=JGH$ M?S:B&_HLPZ#KN3#.H!R9G)R@:.SL:*'CR/<9[FM25TA+[4//2.\E.WKYRJOW MN'RL;2S&V;O7/TK./A7?GKDZ'2T>;E5![^9>7>?!)P'!7IA@B+)(T M9)GR)B_RBG_.7U0WE?SVY63)FU.NVZ?5NLK_N[;C[WXJDYY_E6;>_5]\^<*_ MK(KJL5P@BGV,4 8I"9A*-,$A)D1 [O$X2U'H,VZ6"N;&E/*+C QSX%PW M''JD.!W((Q-DHPBL-0$[54"MRPU0"E!UO;BOU4V=[0!\*QQL:;D%U%6:G>N$ MF3;]CA/@CM+RN&G5CE"W5%WO\'=E\19I))"?A0(RD640$9] $B4)Q+Y'?0_% M*$F-4MJ?[F9N!+@S499*S!OPW IJQHIG,-5CN^N1&IG%=B!];D#Z?@DD8X(: MQL 1\9SI9%)"&5;TD"@N/&UQX^GNZ7FY>N6\C>&O-\G(8>;AKZOBA9=R8:J3 M#)?[?ZI>>:6N8#T4^7]S]IVO\Q43JJAF_:OZZ@F)1.HAC\ H0UPZHEX(LSC& MT/?BF!":$LZTJNU,)O'<:.GO/']X5(8!?I%?@ <.GFNA0;4"A(/U5A>#ZT.3 M#/PPXXI@7,)_6_ 5NDF#;P*GNP?5$C%@=0<[%17@<_UUZ(I M/[Q5?V[?"H-[:7/[=DQTM6U6WQ*S>W)3CMC@5;M)!)GNMMZ4N.Y=^)NT8_LL M,V?+/D>IGU)&8OD5D18(BD0$4T80]$A(P\2/69HBTZ0R_RIEMMOBT&53'+IL MBD.O>ND*?LF+]M>&1;>NJ+3M&LCQHP.."FS?N*VP;8*(P[PO;UMKVT3I4UE= M'-?9WC:-G_,*+Q53J6PQ:L?Z_:JL?ENORG(1(\^/8TH@][Q,W6D*8$91!)/ MBW@J"24E1G>:ACJ;'Y>45:D\#K%9BGRY!+25V) XAO#5) Y'J(U-'#LQ02@%I4A[RA 8@KWACJ:EK>T%#ZB#=TWC&/7_S.5VW*#GK?6&H\\0:6R#K.$G-32*C1OU\ID47='@O<#ZH[_:%N0FZZ>^#W^ MJ2S_@N;+?'?#_[9@GR6TR^TSO)1]QSR)/0]ZB"&(5/6P+$DCR!(O2PC",?6, M+'?#_N+=E6;Z)W2_KH^ %$FF*:!+ )(L"B!). M84IC!%F04B]BT@=)^.*%K\E*EQ!UNC69C?W.QYN4M;4&<#VE2E7&>G?^T>9= M,",]+?#UF,XUH"/3VTZR+@+E]PWY+\EX:BWY@DM5;^,KKYJ0O5WUT9NN^MTW M(>1;[FC-!#Y'7*;5Y:0$9@+"(6L9O7OU7NMWO/ZVKAF1U5U]Y^MZ-V:1"NQ% M)*#JJ->#"&?2<&,>@FE*X@ACYK. FC&51J_S(ZK^[BMXQFUMR'K/E:V62U4< M]%G.L'K_U7[[]>PH&._"ND!VTLU8*;"Z ]&(W-:BDT(WF[2C;,M>@LC][NS9 M'M]JD_82! -[M1=?M8Q@JQ[Y6ATYK?FC](@DT366V4>Y1N4/Q?LVT]6]7,!* M%?&_*J0%5W]:-H6UV7]MRCI'N%SLO@EIT'U707?R#U6USLFF4F6-[E=2>OG( M@L4IQB**(!6I]$I)R"".D0>#) YQPH/0#\6B4C?.]*AM4NF-?-JM#N/-9W5C M@#XJPZ+OQHI&==#E* /53EV M_J:!N5-^C718]_9#O[(/%[K#?84[USF7SY+ M\_[7&]!" #H,0 ^$VM'NP0!V.-PHBU5Y!1(+N4(T:( ^'.H;U@#B,%[Q+<;1 M51CDI+)/&UWY%L-R%+3Y)D(XO6_XJ8[NV+O.LXA#/XZ\+(5)R@E$"5$!XEX& M?8Q2CZ3$PSPQ60?UNY[E(J:NO3WWK[UMNFMO>:=![[JAD]N&IT9%;]D9!^N1 MUXP+MPNWPO=N%XY^I7 L7&O$I[J> Y7" < T;PZ.-2"':G]3A\YVRSY-Z': M+N1 O[8),>]KZMSF./%2AG#&L$H)32'B.()I$&'( RKB-. (":TJU*8=S^VD MJ9-;F5&=Y,:DI8VZ'F6-@>7(A'4*QM=>"MQ:<. TB8PM6H[(2KO;2:G*%(Q# MHC)^WY*FU%;(N\/(VMZ^^[O7W2/MW9\ZW/;;LWJP'P/W8[5<2O-2_7%1GPLQ MC*"TR3)):K& F), AEZ8,,$"E'&C;)CCB#D["FQB97_)BW__-S_V_E?UN-JH M6B>F<;(C#:HF9[[Y4(W-L/6UB'='UR+ZIU7*2NP_U^K97)>X :VJ>Q&]X$^E M+FCU=4G+HPZ(*Q(?1\AI*7]4H(\6B'%[LTR*O"K+CQ*8][C"9;5>/3]*]]!# M!'$D.$Q]'D,41R%,F9? )&$HX(Q2[!FEOSC5R=RH7,G8)/X1^<"QD#Z(>N1[ M+30C4^<.E;Z #M,E#ZCO*FGRJ2ZF39T\H.11 N6A9Z\J.'O[\%#=K>LMQMNG MRJ+>['X#Y,P3'/FAQ")YM MI=K3X%Q;J/:@U;>H4WM:L3-E:L\\;+>X;P-3=W&*=9DT5=YZ(SMK$T5(VV)! MI/_GTU!Z?=1/(?*Q#S'V! P9YMSG41H%6@43S;N>&Y'LHGE5^+04TM 8, != MST08!\J1&44_)OH[EUVZ/&4UQ\N1I6'0\:3VASD@AU:)10MVC/6#O_!BPU4T M4%Z6LD$YX3^IF(^"M9>(DC2,,?.1"J=166)2 K. (4@B3 G*:)"F1KOO%WN< M&S^UPIF1TF5<];C(*5HC4U K*]@3]@:TXCJ\TV4,CB.^N=S?I#2CK?XAN^B_ MZ")WW><<$[GZ5*\+3,*,!83!)..22C*,8292#N.0)AE._(!AK3(R%_J9&X$< M9*\#RT[0:[+7[5#5(Q('6(WM$QWFK_M\$:$< M=L>/VR2Q*ZO\206/?ERM!<^KS9HK*T9^^J--2]-NM,K?_,Z+?+7^@@O<;,TN M1);$?I(Q=<$T@@A)VX/$)(:4)5S=J_)#3^M\[&I)YL8F6UT +@I5@D!L=:J= MISJ!U*;+/K5J]*I_6=::@:>M:B89R*X9RV&&FG2$QO;"MH.STZ/QPN1GT*G2 MG6[5OVRT 5\F'Q63?&\3C=RVHV0_=_[#56(V!] .)UR[IH,)$ZDYP&$_ M09J+!BW/^+K5L^Z,\G6%\Z(.$"[KO&KE5PE($ZJR"#&+:,0HC'A&56G%%&8A MCV$@ESD1X#C-$K.C/_V^Y[:R_> E7[\TD] ^68()^)I'AN- .O9)8B=UC>=6 M;ODY+P[R(.SD=WC0: Z:J_-'@YZG/98TA^3HM-*B"G%8&]SXZFML("L"F8: M?SN(JQXA.4-K9 K: :4$!3M)1]@+U,+$52C68%_31E3IJ'T4&*7UTG6VC[KU MDL9$^()F$#-"(,(Q@YD7$BABQF.2TB0EW.0N4J]M(TZ8X+)14XUTN1/0SFC1 MORMDB<5$1H?32SXG5'5L*DQ^3>>$2N>6>@<7;6SC(+?92F[+$M=,:3_ M7*EKD,H445[5 HS8EMF MZF4KYD1![0;CK&F@S&OTQC9SK@]W5WJWF5)ZFO=*C^V4K[<39Q#[;CY4;QT( M;R#QOT94O/D0. N1M^C:/)CV1('P_RR_<[[^;;W:/.^N*FJ&UFHV-[=UX6RA M^_\L@9(>U.+KQ];JHCI,]2,!.C)5ZV$)_G1Z^],"*JLH7-T^)HO)-52Z'Z%K M^JIEO.Z)(BK';+BLAU;^]$TTDY)=6U[IV97-:DI@_"G4A74NIZ?MY-\ M$_3LY#<V8$BK8VWB@Q$&!N:T"=@?*4\]P2A,46B,EP&.QGC 3R%$3"Y_+#0.3[J?W_BW .>G*V[1C$=GY.U_*/SW\Q@N^QDO9SRU[ MRHN\K-9U0NONYHB/$\J1#R-$I367LR*T1 M^@8\-&+?U#,/[TEN$.ZG!_LPI8T#YM@DUL@+6H&!E!CLBWSY1-D63H,P2>>P M3A0/J?,U=17O:(318&"C7DO313 ::;87JFCVIIVA>DOE5VE3YW(^E_FT_<)+ MXU3X<<1A% L"$><($D8X#%$8X=BC"0^T:-NXY[FQ=T]P<"HS\N>A:H%7#H*> M73H*M"-S^>VW]Y_.)'X>(2S(&"%'-J=^OY,:F\9P'%J9Y@U8%Z6KJZI]X,V_ MGXKO:_Z,<_:!"[Y><]:ZAY(L:SGJ&BKEPB/8]^*$P2QE'D14595&&8,,"2_$ MDM1X2!=%G6V#W1N5J+.01FO29WP$-C4IKL"07.<4K--)#5I\BB'&:/>*DW4Y=Q03A-" M[0=8W[[@?*E,7G7E#"_Y'X7DA/K42[D2W1V.198DL2\0A2R@&"*/)3"-4PXS MXF59Q** T\@D;-I&"",*F"R^6J@PN;IQ2=E9RT$&'B$I3V(!V7I+RB+3LNW(8,?I&& MT&9=QP%\7/-_;E29G0^K)YP7BX2G2:RJYV;4"Z3_%@J8LM"'L6 DR"*4\M#H M7IE&GW,S=GJ2@JVHX,]&6,.H%AW(]6C.,9 CLYHEAL:T98"*(Y;2Z7%24C* MX)"#3%ZU<(26R[N?DN'4#OI[:2 _U,52VNU57;=HH(VY\8:4%6R%!3MI#;RB M(<0T?"1'8(WM,9W!R>'FLRX:=I[34,/3^5$:ZNUY53K/6T0BJ%)5ZO\JXD$Z M!BK"X??'U;JZY^NGVT*:+\6#^K&I7E4'0"P$)2).20(IQP(B1!-($D_ ).9< M2/DJ,B[M!Z,*X^$\4QZ 4N&EJ/O*='C>@K$>B4MBK#?:E&HGZ4[Y3QU5\@SV0 M@\$.%LU.%_E@K_->&,05S5@?,K;)E?=29#<;\;MZU@N$LEC$&8-I0B*(!(]@ M%F0IY"SV$L(XRU!HXI5J]CLW"W-[AI47=:KV]@"Q7R*\K@@N^!H\KW-:UU:5 M\VU=7[&"U0K6E5A5PEG[:_3SO+?GB#LM;IP=!EC"Y^X4 M4:O7J8\-3: X<4YH]+JY/_QU5?S8++GODO7,U]6K8N#JMF!J@^A93>I[ MV5Y[C!T'&?*#.(:1P!Y$S \D+T881GX6)6$:^RRB1D;.Y3[G1H5J@PQ^SE_D MG+N7O\_5W8HZGM0R>D '=DTCR2V8(_/;%3B:6U/ZR+@RLC1ZG-;VTH?@R"0S M>'7$#$'W^.<[7G"15W4EX=Y?VNCN1<8\&K* 0(P0496O?(BC@,,X]2CS11#Q M-'&>&.BB6',C,+6521J)FQK8M!_)S&T20C@:/SV:FWY41F9"W2P^-_4N=*O6 MQ,EZM/&<,D?/9:'FEYI'&TBKC#SZK5L2-5X7>?%0?N?K6H!;HJY/4^DUDSBC MQ(]@%$KK4-J(&M!GUGNEH;F3:R:DRI#7)7L"?G:RFR='. M8:M)BPX0&_M4S0HL4'OLY?ZJ0I MY3LL1U=9(YQ7G]MD@.]>=P^H8NJ*7I2K^.[U;YP]2/+YP,O\H6@-%NGW+SPO MY@E"'L084XB(]-Y2$6.(4H]G <,>X<+J0HIS4>=&.;N4]B7HZ7H#6FU!K2[H M]+U1&?)WSX%.9Z"4!G_6*MK>?G'_M="CNWD,]LBT.>DXV]_0&6T(7%_L<2_H MV]P'&@WPL]>(QNO1,C?LAI3U;:;J[D7^Y_,V.70:>PFC<0H]EH40>22!V!,1 M)"GR,R*7E#0S6E3.=32W)6$G)Z@%O2)?]UEL]9C9!6)C[[U9@66>F_4"$JYR ML)[K9MI4/NEY2V)0.8^;ZL/JY*+;9!:9P!RE(OVBKR MH [UNI0MVYP7!K%PQ0JG.YF6$P85/6*$X:?'" =3IDI>;%:;\G1:AL^\+.\? M<>$'7^23C^4BC!'U22#9@T;29U69\# -,N@G*$,93[U(&%U7<2O>W/CGXS:G MS U82EE!)84%?@">:G%=AHT9CZ0>;;W=^(Q,=UJ!9CO]SN:IN0&?^P/[97A@ M'8>AV>(_27R:L7 S"ERS!=8LHLVZ%\/+[.IBUOIU\?[K@@H>42$(]!&2WF$J M$IBJFE)1$&&DIN&[?<.J./G&V6_)O8 M-\>^%;VT$/7F_:[&5Y+ZD2 L@1[%ZN0V"R$. I5457@B"#,?"Z/[CQ8RS(W M?ULK_^C 7VI3P?[=C3LH8V_LM=(KSCWT8B43]U1H MCTC!.(7:[$%TM2-H(<&TVX7V$!WM)5[1E$4^1%6VO7R_7)7\?O6E>,X_Y"4] MF&JZ:1$O-S4WPFM$!K7,*G_-??Y4%Y[Y\O7[)Z#$EW_8K-4>4ZV'0=)$#5B' M&6P$1$=F*UTP1^$J0[CLJ>-_>?:;2R(HB MD4 4I RBA$>01"B#28A3AFC*>9*99*W?:]V(3B9+1W]-N9Q]\/1L'&M(QN:# M6B[I3[J^X'U285?QLGMM3QLJ>TJMHRC9DP_9S=0?_(47&][5X_O M-V6U>N+K[::(GR4()4D"A9<)B+(PA!G&/F3,"Q/.>9S%D8FGI-GOW(R%5NSF M#N(V0/$O*3GH1+?>O=(="CU&& '@D;G"$;;&5&*(E".2T>UU4OHQA.*0F$Q? MMTK=_JE@^4O.-GAIGK+]Z-VY\8M*0=X3TBA#^S$P&M[%E9B,;3[LP^$^$?M9 MY6T3L!\W.&7B];/J'"163E M#+:QSZ)JQ/J2=E?O?KF[!)_Y^9(6*JX.CH8[F_9$2$OQHZ,>O;?,>(3Q?'%7 M5'GU^C%?\G5;!N)U$4?,0WZ*8!(&&"(1^]+KD*Q+"0Y0$J49IUJIF\ZT/S>F M:$0$M8Q=_9%7/:(XA^ P,SC 960J,(-$>_)?4'Q@]9=O-A-=_K";W^?:FV1" M7U"FF\&7'K/=0)!&_896F[7D I7;[;9@\G=\_=+D2DU3(3(F/"@H]R'"7@;3 M+*,PYD$BK1'B(6QTH_Y"?W.;TGOBMC<9+=+/7D)9=T_ &7:C[P68PF;A]FN! MX;G M-OVWTMEEK3C 3F_-MT=DY&FM#X;%#<53.CN[F;C7^,0W$D\I=GP3\>13YBYY M>\3X,2\I7OZ#X_5=P3[(MA!0 M)W.;O*VN '?Y;?A4=<\N_KU<,:/]UNJL?56L4?-O:5OXAH)N3W((6< M4I6B)$DA%IQ"'X69"#(:H,C(H=?L=VYTT%RX7V_E!L^-X#< ;T4'V,"0-QT' MW>7?.;JCVP4*V)W(X'L'[$YJY^7J#&%RF>1 H]?ILQ[H0W$R#8+!Z[9Y$;IT M39\*M2G17"0I6)NNZ5;50:PO[?9B3C_OLBR1C"8!2B#S< H1\C$D?BS]#S_- M4A&3)!9&%2&NDF9NQ-;+P-;3IK[_T>H#=@KMQ_1^MLW9=-UPZC'A9(,T,C^. M/#X6.0X4'SYR4O=_G9SJTG/!ZKLN?SPS56-9\6^CD+KW MTGMRJQ+X2XQ=D3#3D2:E(U=@GA(RD[;=N+;LP_U$=YWN5JL6)U1OUS$ MD8_#$'G2$DY]B(0GW7H6R&47P:PV#EU=NB^C8./0.-N*"1]Z:I MJN$PZY8^.N/X\:V/UTFZ.XG M50FUML6"FHV$189#%/'(AUG$,H@XES\QR6"RGR3+N)=@890QV;6 <[,>I5IK MCIO;N17^V>52!6N^5-2J+NN69_*N&I8&M3XEN,W,I%N5>L5(@%*.["O M7E-SK8W(!;^TZOS:$NU0T3;7VZIC#8:K:DBNQ9NVBM)(X!Y57QJK'[L59"M% MNZ=4<$6SFM M DS/H*K'N==C-3)SVL!D3';#*#BBK#.=3$H\PXH>TL>%I\V#1558FAQKW=C0 M]O&YS=PZHE'^73_*L]-[>$Y:JCSR!+RHK5%XYH%^5M&871N3!5\>"-V/M3S\ MD]W"^%W"P-=KSFHGKO'6=N>N"QIB&HHH@PG/5*%IWX-I)OTFD8F0"<)#QE.3 M!7*XN]E-MT[:=@^GV;_IQVI8[^I0MD+6FW>],+SG"WHNJ! MXFAEO=#9Q(7O=10_KGFO]99A^O&'XN?BM'G?X>:3W+.LM44P^CO&6L M3HF.E[V#1W^;T82*A+/ 0Y#3F$%$,Q\23C"4_Y=:TR="I^.S?_\V/O?\EOP";$A=,E]>F&/%A4IS9.(Z]/UX7 ME6YV9?9OM.QT!>]>0?^Y[>Z-4K@M]R,Y>*MR/^[#-\Y(-,4W@*UH'9Y0M_JO M\DW8$WKD;X1SA9TF3YIP8)KU7758+]J^Y_E-H8()1)BF L)T6&Y+*TS8I>61 MM:UP=__*EW*?$*.!]+IK-S9:I)6P],;9:+O&Z M!,]\W7AEID?M/ZD?HB4R\-OL.8A;F-OZO0B-GH-6T$QFS4/A?H,3L! M[0I]XL1=&OL^YT9IN)\;<%F Y>U.S9=82?KTU<7Q01U[ &@5@ MK0'8J0!J'6[J" U:-;?9MMK<-+=FE2;N5I?KD'2T%%@*,2EO7P?4(V=JU M=9!^6ZW87_ERV:MWQ+.$HHS C'D91 F*8$J%9$'JAS%E,0V(9U?OZ*BON7%; MOXY.)ZQMA:)C8#6-?#=PC6UVGT!JHMI"9V%Q7D/HN*\>%AD(>,1813B. K:&_](,,B2*(B3A# AV+4GQ[W^YL8<9XZ. M5SN)W9X=]Z&W/SRV!/2-3H][THY[?'P"EA'/C_N]O?D!\@G5=4Z03[UF<83< M:^;C:JT\R:Y$P&%5/Q3$418D#(:Q"E01'H&$LD3^E&91XO$ 4ZU %;-NY\8Z M/<%!*_FV*$9I4HK,$'V-D]E1,!V9>(;A-+!NKL'6X,QS%(PG.K[L8RU:K.D6 MZTJ)_Q^.3B"-81H\3-1O;;IS06,-]X[XS-^^HN#;.TS_/[ET<+I9UTD&VBHD M:9IY 0HQY#'S(9(N*"2!M"$9"<*("QP'V,CI'.AK;B1>BPI)+2LHM\):U(,[ M@ZV>?>@(L9$IN@&K$1/LY'18],4 #Y>EY,[T-'UAN6&53Y:9N_"*;:J0ZCTN M'[^O5R\YX^S=ZQ^EVB'[UI64V.4I63"!/2R(M/X\+,DCC".(@R2$/&-IZ"<9 MQC0VJ1VIW[41ETQ06%)*#J@4726:JV571Y^_;-2A9U[\"G:E4O!6!=.\(-JC MHD<[XV ],@LIF)74X'L?YC\ZF+?"]Y(LN J">%1@D<"0B5#YP A*NF,PR$**$B(\RHPR MU+D4;FY&5G^_^O"0K;P!C59[9VS=W6B[_7\G VQV8##UL$UXPC!X1CH\?),< M2KB$WO$IAA/1WN38PR6HY\Y)G/9AL>%Y5U;YDTJI(1UOP7/5G[HW+S_]4;SP M4OZA#9B1O[E=+K^NBM]YD:_67W"!FQ"!J'1/]>S/7RS(WXMQH!7!0;O%2;3:UF8*T"]>1GL&F5DP9RU%%O5+5?M5*@4: MKJUU?=T /;@<[Z&:Z?6)W MF.QM(#MLUF(-O7W!^5*MR++UW_&2[_:A/G!2?<%5^^E6R/7F6U&'4+WC\CO( M[_]:J0_E+@X_$"F.!5*IOL-8NE09@UD0!Y 0+\P2D<19&&HOI@X%F]NJZL.@ M#D$T61%=CI/&TOA&Z(^]_]UI52]_2J_^+KC2#.Q4 [5N0"K7Q(LVZ@&I7S-X M.I<4QAU'@X7SC<9SHA7T_C$O@71$GE2U$-EP?0M%&I] J"%ZJ2]K2T>8J0'> MG1&!OQYS^@C4E5_>Q0E7*[F8U@OP7WGUF!=@)8?_50V_?%^U2+#LF7)0/G)> M@6U>XEU3M"GZ6B>\*"2=*Q,8E^"1+QFL5O"I@?I5+M]K4*UQ?82[D\G5^CW" M> \NY"[[FVY%'P&EO:5]C/;-LSG=K=?J!HI*)_?"UZ]-:3O-U$ZGWIW;7OM5]=6Z&U5 3.U0UHEXRTHM\__##[R;-/3KA?U_!$%X$Z%( MW5Q57\+ZE_*'X$;:&N5SD[9S^7JC7/+57[5IH!QTNN8LK\!R598JD%DVZAVU M8!BC8CCV 1:I8"2%J1QKB/R 0YRD&/I!ZG.19B)A8B&_F&0U@]'ORS'I^(\[ M!GI'4"/B.O*"4GM,.P%OP%85*"_R<5WCYE5<+C'#@191#%L<(HM"+(<99 M!*,T9=R/PSCBV**$AKX$6I-O^E(:M;C&Z8AU4=>C,<<@3I:VN,G5_TLG]J]J MG6XR6/0BD>HCS7KE_IQCDB];OI/*.,UN; B@NXS'NAU/G079$) 3F9%-6S#< M0Z\9D+XN[O[XL? IDU^X",& )RE$Q$MA%O,((JPJ9:0T3@.M6WS]1N=F0]]M MUBO-[VG"T5'MM?EKJ")AQ7^LD;E?U13?I!"/2WZ4[H/. -=X\W\[G[ MM)O+>\U-LX-V0H'M[M>IOYGO7-6;%/=/#W];_?6E>,[?%R63G[<17II[6,.M MS&V"-?DF[_,G24\W0,H,OGS]_DG=I"ISB=I \E]3^"[O9[E#;NR#G4N@.:X, MJ ^.U0;7A:8GV^K24[&_Z:7YANTM^A7;T.KO6.50JEYO*5UO\'+A15&"N8AA MB",?HCCR(/$\=04JC7$24Y]'_N*Y*;!5X76EYQ.<[LSD.W_8Y7A?_W?\(2\* M9:BVQU.F5^1/XDIXC,(TE-Y5C#!$R,M@%H1$VC2Q1Y,XYMSC+:YW!9L6U:[# M$1?_YG:E2T#U_*CK(1J9;+O"K+4[=/>SXH4Z2&C%!IW55N#V)XA)GG>0'T4W48QA"!*0]\F'I1[%,69HQU MS?CH$=E$J,_AT&Q_5!IU@-)GA/,T![ ZXL1K))F4*AU =LB@+IJ\HG3]XVHI MWRB;W,.+4-(B2A,/XM!#TO43\B=$4QCZF&>(A@1GGDE.@.,NC&AP@KO_]ZJ/ M)L-<*^>__UL:^,G_ KR6UZ(,_3ZD@8@9XR2"*4ECB&*,(!9^ F/*LI3[L1\Q M;KY+<1VP;[%#\<[&H3Z!IQ=$7IQ$(13N<;.K\5RJ4^SMVNU*>!\&94W#4P<0N MP#D%CPW^LT_:FO=-7L0?_(47&[[]AZX>"A6>YR\BZ@N<40XID_,WC2,YYG\4>LPC^N-CQ3&,^6@EKGUAZRNM&;L"Z])]Y 9[7ZG9@PTNFQORE MT= UV5V .Y5AWB+72GG3_0!V\KJTNC61<69;7^IO8@M:4_UC.UGWQ3&V&7YP MO%2]_(;S8I&F)(RPD%P4I0*BE'&8A11#'.&44#]*46047JW?]=PV$7Y;2V]$ M4E C(7B0(CK=/=B#W<5F@2V8<]@;Z&0'2OBIM@%. 3:)U[_7\8R<_%. F/GT M)UNXMB+%0$:6YA83#FC,8B$@E?841)XG($%"DI9'&1,TB=+$*-6\?M=S(RW] M'$D7[T-=.RB:/M@H4(]]G.,.Y2O*7N@"YKP*QL6.WZ@HABX@YVMD:+?@ZE; M@>6W\'R2QA%",&5!"A&F"&%3S M<.X//WRMVW2Q6&MYKEIK8\"G29(QP3'T(LP@DHP 4Q%2F"$4>T+P)$*69?^N ME&QNO-)W!YJJTF2P^G2Y*S]-CLM/7^N873OLIG[;A(,YH5NG4T6\'"PC/J;K MYPASYY[AM7*]D>/H",[S?J6K#BR2(7Y?KRCGK&P;+3^5Y4:=L;="E-Z?7A9VR-V"K;IN_&&P5'KZ#/]UX&^1B MG,&X3Y27\XD5Q^[+SIT]QF(DD@2I!5T+4[G9J5(+&L/^YK?B7 MZI34.H!:":"T '\V>AAZ?Z:CI.?CC8C]R(NT>]B-G35+\!RY9*:]3^IX64)S MZ%[9-F-'A'62'>6]K?FC=.!DKY)T5T]\7*IZ>M+% M*UC]:=DX?.R_-DV2/DG,W\0]_KG(L! !CP)(,R$@BH,09A%%,!3$IPPE-*+4 M+*7A.(*:3.YI,A^VNH N+XO*/-W)#_!6 <.SPI&&F7,:Q#C!D-?>9/74&^)9C+#>DOKVXS;RRMMDF=O3$#0J@E^4DK_> M@&Y4.T5!3]/ZN+^G*]@I6WM%RL.2"KM;IL<=$$>K^4A"3KKHCPOTH6TP9LR7ULWFJ:F<<]>6=[CGZR=_09 ?TIA&, C2$"(< MJ8(U6:(*UG"4)0@+'!F=U8TFZMS6F+MMF0PI'?@E+^K2&.6OAL=OXPVMYGG< M+ 9L[ ,ZC4.YP3.YFUZ!&]!3^ 9LOP9*9X='=J,/BZLSO/$$G?90;W3 CT[Y MQN_13_<(;CC)GE M.#K3T=RH?B ,(5N9WK9EIJNJ#L$;%< M>MXZ"+TSA*6([U=%E1>;^NB@3B M2:@IU]0\)ZU>+EE)=BS[R N\?OU4\:?R MJU19OBG5EST]?"KD].5EM@'WU0*>?TZ#\L0?!73C_:)).?1%@;,A/7"$8O4N[M48VRGB9 M/Q0J@40;,2_\#).8>9!@$DH3E#.Y6D0"XB@4(D&88L]HJ^)$'W,S/+^N*O!A M*Z,JG?DWSAZ:*2_7](WY)O8I8/5X^4JX1N93':1&N)PP (HC?CO5PZ2\-*#B M(9\,/6H1@=K=:7BW.W-AE>]4O+U0,Z6Y7K+4< =O4F:/6C5J =WJI M/(RM8F"M-#.(.;Q^4(?I:OJA&M]2;$;I4[&_=]FJ Z0^X'X%6HW 5B6PTPG\ MF'R4#&) )QVMB:(]=]=H6?\:[773S%5!;&> #T9Q7M_+=/&:SA#9B\QTU^H5 M5W@W5%76+AYN"_:#+U4GMZI.:U/!,"_ISJ ]X]X_6":$=IJ+/0L\[$1'GF!VP=7Q7&T M"H"=!F"G@N/J12Y ='D+V52$Z2\I6X)T\@ZS;5O6-9.>^;IZ_2Z_?Y7L4N7J M?&Y.VNYEB[<_\W(A4)B1$/E08!%"1/P($D_^Y&>$XR0*@BB.3>A/H\^YL=WG M5?'0AD#?[P5 @S^5N(9'7CJ@Z_&<8RA'IC5K%&UJ >GBXJXPT,4>IZX2I O! MB9)!VJ_:TDZ;F*5.UM!P<+XS"A81A MHO*]H11CF,4LA7&21#QD+"9):L(9YSJ:&V-T&_H]02UOO9V%5H\B7 V,D%8 M865,#Y> <$0.9[N9E!HN*7M(#!>?M[Q7VP7_?2J>-U7YF;_P9= >Y*& (3Q?'%75'GU>O?$UXJA?ENO_JH>U0XU+EX7 M$@H2R3U@7S M)(20P(,IXEF<4$K\4,NZN-#/W/BC$15TLH)&6-!*JT<8EZ =)@N'@(U, M%)98:5.$)A(#U>1E"PTSR!]VA'"IW4G(0%.YC@AT'[=-TK'F[4K&24P$2A.8 MAGX,$8T)Q%B:$H2$- IYRC*.S?)O=$W/;:HKR4RS9&QATESPK90?>WW/U>&) M^X7\2%=GJ2BV#4^<9>)0H>,$$D=/7)MS]:!P^><8I2S>[?*!.I&3CG M$XX:MF,1U7E8^6=7$TA5"/J"JZY"D) $\E%^E?^AKE4W@>@?\Q=>?]SZ10ON MIRSF&8%!1 5$6#)B)A"' 8F03[V 8:QU)W$$V>9&E@A&H);0(!#0\6@-,^8; MC\'(9+I53 5F J5:K[H9J*N=[;0#M7I Z=>,&6@T!$K%]C>[#9NW&U"#,,^W M&]B)8C[WZ].5:H#+7ODZID;X:3?"N!YA(;N7SK/*'0'(INKN>XE,RH'3W:$I58$^ M=6/L4_&[G$]UGH*Z_!4N:(Z7W_E:"O6DTH_NS&3,>19RSF&4A0PB7PA(?%49 M(@TIBJ0[P[C1@:5S">>V4._4ZMU>D@RB-&NOC-IZ-J[&U-3U>8.1&GDYUQBD MB1PCQ]@Z]YQ,_[7JX[&_<^-N\_4S^OK\#]!H\6UQ0B'QT6/H4=$ M>V3^-0 :_*E4 *T.#CG8$KW1*AD.]_[&=0VUH+EB@.\Y)S M $=FH@(E$/$X@UE,I4$4>#@00@0!TKHW--C+W)BC$Q0T MDH)&5%#+JA\SYY(J' MS\I]V\83=,7*/FSX5VF7W?_%ER_\RZJH'LM%Z*4XH5$$O4#$$ F>0&E=27O* M$SX-/$8]E)GL*-D*,C?2E=\Z9+9G9#T$>IM'4P [,CLW*MR K1*@UN)F%]UT MHW+S$ Z^XYS=U"?OX%MQWB,VWD.Z%D1'FTG68DRZJW0M6(?;2U>W9[[/]/WE M^2",4'-?Z>C%N?&3Q N\E*!W)M%+VW(#:N'U=Y*.<;J\ M'(3!:C_HN+7)]G_.*M+?[SG_D)W=[1+A+C[J>JE,I9DRGWZ7G3 MV+S?Q!U>%Y(Z2CFP3:75U],-U(E.:(0"',0QS)"*WZZKG(8H@X1D"4DIB_V$ MF)@V(\HZ-W;I2]H/G+/)23/F$.N93C,9N)$YSW+,C&VH"=!T9&:-*>FDEM@$ MD!\::U-T.:ZKJ[P'%;^WX)Y(0NH1&-(XA9*,X]IN(7?KTMH .4=75NDPO2][B-[$/NRV^UGZKH?@V/JL1^V8^ZKW M:W:[7G\JV'U>+;6NT1R_-3>JJ872=T,/(+CL@]IK/S(_W*\Q4ZS0JS"G$GVP M_"5G&[P$P\ 8.:"G,;#R/@^:FLSU/*U"W^\\\\05)5[?72X&^.ZP&&"S:5]^ MVU1EA0LUP'_G^<.CRJ3Z(AGB@=_]Y&N:E_S[.J=\D<09E=9&!B-$,XAXJ@IM MI2$D/)2_20B)2;)XKH].?Z_PNM(S/R:2WF0R'>HPWKSJ"5_G+62KY5)=SY(2 MV.4PG.J[0"DA6*0>3'TF(,I$!#.$Y,7<_93.0(&7[S=EM7J2?L&[U]_XZF&-GQ]S M>JMBP0].AS@/@\PG"8PQ)1!YU(,X1C'DG NFDK?CT+!NA;4L*PG3Z@5LBTN(7]N.FM/A.-QL@KBL5 C'J'T &JSFI?V$LR<0F,JR$[ MKH1Q?9-V?"O7@J=5]/ER'$D7?158':NG5-E%FCC M I)@SR_E5B=M,E,RI:K;YM:/,*PI=HY J18<\UFJJ44 M";A_(!P.P/WS1*@]0$)0' 4V5O2DA['9QDK *CK3SNB=@F=F MRJZ"I&<#M8]&#UQQ%U7W9$5.VQ_4-EQ4[WC&7W[0D<=QL51.V?S]8C-?+U\; M1LW&?!Z8,1L@4&7]R0Y[H8EB6R1^V M^CROLF2F O-$Q$D(289BB'@4PCS3I&H81R&2.<:A5DO=Y4Y/>3L]3LD(SF&.Q+N3W7:=AY8 MWX=J%WIQ#%MM)1';_?9-(;A9+I4HTS2,,*%! CG%*40Z79FPA,"<\0PC1KE, MK:A;[$48FV4OB_:ICIZ4!7@1JW492V$96VH_#F;VNU]T>[;1);WE3L8)."1+ MU/HH4[N5W&-HJ#-JOB(^[048-I#3&:"3^$SWENQ#DW:!*V74M6%HTN%;8[,^ M.^G^:AZ@= 1$NRVY#H.>;<1>+)*O /'+^CH%(QTU-5@PTGD5]H.1+CQASW#R MOEB_ZH/F]PLNIBAD88QI"&5&U+80*SPPDSDD(94H%HBSS,A!.&YX;!-/RU9> MMP MG3ESR0%8[3/O&@CZ/O0UT]Z*D>2"Z_IB@.4B)PKM (*40,JZF'4P)I$'*)HBQ&H5&F6'LW M8YN(=6FI6M0)J(0%2EK+F=F";/<\]8-7S[/6%2J',EQM2%Q1A>MLLP,7X6I3 M[;0&5^O3=M-_M5Q/ZV(;M\OO8OE2L++6^#0E."-AKO9%B J(@@Q!RF2F?L4D MRX* DMCH*/92!V.;\DU=&3+GH!;3*J?S(I#M\]P'/#W/< =DC"=WE_IMFU_U M[M[&5_VVF]P7FQUD6GQ3>XF5A VD:Y5@72[$[7+N)H=G'E!J^_5O)917SM4 M('GF#34&P].QU^5^!CW=ZE3W^!"K^P5G6O7%D]ARN'_1 [4K/(]QG*"TD8LJ.\:NUM;$:B$A9LI06-N-TEZQV@-K,9W@#L_;?:9WC+#5YRX"/](*18+@5O@D;KT)+R/)V]?OS) MRHJ8-_P?F^KV:AH$:9"R#$.1RPBBF*:0IBR!G+,LB%(LTCPQYBBU[7ULIJ8) M@1*UI&"I!@A4/]N4Q;,>A7:KTSNV/5NA1G10RZ[9SRN@&_%!(S_8*= GWA9< MJ'WB/A _JF?\[;A37?%KY5.U;G0XCE57?0]X5YT;N9:SOF*%T.3J,4J#/$DS M&!.A4\%U638I$<0ADZ$4:2R1=&.LW_8Q-O-_S,1>4Z!HR0_WIH_9'R-_%#]W@+DF(S.I]3HYEG(A4 M0LE3#A&5 M(DQY"(@-,TR4(6&UT@M?8RM@F^+Z'E[K$=S>[#9"\8]3R_[>"Q M.DSN5/^*$^7+;0]VK-RIWO[9[ M<)$ZK@'S?1>87JCBSN/3(SG<48=O3@=W'@ 3 K@+;UH>,-7;C^G__?W3- TQ MEIPQ2(* 0(2H)@:*L=H>!'&:I#Q'66AT;K37Z-ALQ?_=S'^094'F>K]<&)]( M[,/4<;#CJ'S/\[W2^W72I;;Y0< 9/5N\^>;Q:MXVO^WF[$%SP^SLSRBPW;"? M^YN]J_ZUF!=/FZ)S0U(EP\:7EL M<;,A1ZQGWS;:+MW**IYICQWMAJ[J MG;C:; =YEL!(YECYSV$(:1!QF/$D#G&.N;S,K%.?H]"SQ3IAG:R$U]O[2OQ#DLH/ MNE"">OJ/1A6/D22N*'HR:)V&JG*PD@%)0@=,@RFADE6G>UMG8#%\5S;D3%M32.D:W MM>)L9L1\H=>SP7('SHV(HP,1G[0:E[H:GB2C0^FSE!==[S@:$/8H^&8F:A-U MPJNQ5Z-V=592G<02528DA2@,*<9P%,.1JCY>&*!*I%0?L M]2*-SAAMGI[(\K5<]/<+4C?26]JBZX?,T&(-.A!#V+5C'J+]HAR5(I/MH/3* M >L/6E\&\GJ!AC6CW@ \,;;^6K8GV"B)BC[^7+*J2( AP<;A6V.S?H8\^UU8 MM-NLZV#HV?:4@GFO-W!992>:C:.F!J/9.*_"/LW&A2<<65N+>;$67XH7P3_/ MU6;L1Z&F[LUJ)=:K=Z]?R3\6R_D M[6ED[3'SQ2YKT?.PI+/VD)QPT3HT<36Y_ ?-323F?)M5^9ZL'G45RFF8YH1I M]D&I_@N1H FD&=&GY&JSEH41$KF573/I=&P&3"-M62^J/ALO3\'!+YL5 MWU61LJ2:-1H%,R/F&]N>K=<^E[T^SJXEGNQ2K">@A%[+W0O'?2=*_FGO+W?Y M5DSXG2"TD.-WO^O(U+!:%T]DK4W@:J,VWDS<"[9X$O&QV;*= R6;H:&AI#5\)2X;Y=A39=[3V />5\ MK?"ZR6%7\#TE3E;H_;\Y7O8TS BW4K?V:;;X]VH;BD%3FF=IQ& 8B@0BHG8& MZGT=37L18>!TB=7&";O.#KQ_]H4Z]?RM.)6/NC:>)OE:[EM^%+, MQ6?5[6H:A"2)DI3 6# !$0[40LT3!A&304HQILJV6/GRW7V.S:!4(D_J0SHU M-1JQFRIO6G)0BFYI6DP&P-#/]PMKW^Z^#T3MG7]SC'SM 0QZ''8K8 [!R8[ MXE7'^BOE&>IV:)Y33F%OY,(?-C\W(W'S_ M_O'ANV6AE$/ S"R%.PQ]7ZQ6=R)].!OG=?95GN2P\6%+CYQ5[*2LR/FG'",: M'IY^?)T_%Q^*%=L%(=D$-YQK8'33L;SE?RB>="KWUV]WGX$6=[901L\VZN$L M7NUSU1M4?4_9%I0\LZ\:0>(>*W&VU6'#)MH4.XF@:'W8;?G];;'@_RYFLYOY MR;WF;E2WBTTJL?H\4 "3/-#[ H(@CB(&(QF$.4X81M)J7V#5^]BL12-\F8IS M>LV_/RD<#R'L!L?,$^@-\IZMCE>TK7T))]0\N1IV?0_JB3C!!&?YZKIDE]L]7F^=_#RJ9B3.2O([&ZQ*G2PZ"=2+/]&9IN],&R! M@B02/(.YE%27@HP@3FD(>98$<:;^& C'R'DO\HW-9#;JZ=W_3D&PIZ$N(7MP M(KG5$C1J3H!6%)2:NL;=^QE]PW/@MQO3OH^.?0_G0!'[7L?!>_B^'^G>*);? M*[27 _O]=N,8AWQ(/ONP)/.56J%45[^18OYEL5J]$U(]\T!^3E.4!"$E% :< M:7XY'$,LX@ R)"/"9!K@S,IQMNA[;&M 0[' X[M0?,5<&S1\[ !Q_:0G 0<.S3A M9L=NUX]B6?6SKMSNFD,JB;*<14S? D82(IE)9;20@*',"98T226Q(L6\U-'8 M+%0I9VV?UH"4DMI9IHN0FIDA'T#U;',JC&H9FTVX/\HN4R0\&9*+W0QJ-;J4 M/381G<^[V8/?OV\O^K:UQ^O/5R:9#,,TAC%% 42<1Y!B3F 2)1D7F9!"(!N+ M<+FKL=F$[5TU+68S2VO0 JB9/? #4\\6X??O>Q?Z6S%[L G=:'BR"BT=#6H7 MNA4^M@P&;[C9AF]B7>82+!_U]I:.%Z\W6_$>=3JU#U87:Z>0Q8A 1 M380;Q2'$- H@)[H&'#3#;.U M4;)'S).1LNAX4*-E#\BQ$7-HPS.@+ H#2F$B$88H M2S&D7$8PS%+$A- IF$8<#]U=C!J9H;\H-6SV=D" M5=>45&+6^R'/=*;=:'@R*2T=#6I"NA4^-AD&;UQ30J0L&?!!K-BR*-ECOFSC M=0GA,HM%!L,HXVIC%&00!Y1#&B"":8R#)+ BZNOH;VS&HBF$49>_V!/YBCCI M+LS-;(A')'LV)->"Z%A+I!,:KX5$+O?V!E5$.E4_7T*D^S5WYH>B+%NXNIES M791$>3E"^3IB+Q!B=_LG+$*$#^>VY'RS&P:[+EYC0TY$D<)8C"4 BUVY(Q@CD*,YCG M"1SAZ M-L3%VSZLO;>!-V-&JI_NR,Q><[RJFF]6&S*[77Z>RZ7XUT:9,>V(E0QS:1 @ MG$<1##(90810JHP)EY"A2"0XR0F15GPT+7V-S9#4HBHHP4[8JUOEDXLM@U?<3,F]6!.U MC^,?R7*N7*!FO>0BBI&@NM [4O_)D@S2C"VQWLG.]F; :DD1(T M8MK9B0M8FIF(ZQ'JV3J<@-.#H]$.@B=#<*&306U NZ+'T[_CZ6MS0CXJ_WOQ M*L1WL7PIF#C/'GXS*X=/_70K-3W6CWGQWX+?B66Q4,^MUJO=R0 /XS1B2033 MF ME0=1/. D0C".4*M=$Q$'(IB]B21?V^2&>9;697_L2]S?-]I,+&F5!K6W% M0PEI60M@7^$)V*FL7]PI#2JM0:FV:]J([P_$S"*.8M![-JJ=Q1T^_M0*JK^6 M9U#DN5B3F=9+C?C38J.>'B9UI*<1\)Y$XEO.-THGZ0GNRXDE?77H0+O __&P M^+:8WXG%-['0W7^:VU,OM#4R-J]3";M9E6>18+T 2FIX]_$6?%/_OP\^^+18 MK.>+M0TC0RN4[4;8*XH]&U%+ /L@:S!!RHVPH;7EX4@;3!0\(&XP>L&1.XFQ MI2@-TM-BN2[^NS9)^N!>+XGZ1/]N*9Z*S=/J\_Q%5)_&:AI3AF7,(IA%<0R1 MS#G$69C"$&5Q%E#&\S28SL4/S01KYI:Z"6(T<_)JYNR+T^,$VA-?NX^\44 ? M^SS7&@#UMV*GA25[D]N0F3F*/0[#0 :L40#\LJ_"KV6"\78LM ?8Z#$!GPV& MPIX[ZBHD?7%,N0DQ+!?554"=<%9=UYIC;%=!:#$K TE5^R6YW>-BIMY?5>QW M4Q(%F%,=]8FC"** 4TBS+(:,A $/."%1GMI$LG=U:.67#1"__J#[ +.=U.4, M+*MJU'+_'R!*R2T#O+J -[-Z/N'LV;Y].<+P8SMJ]A%=AE#X"NGJZF[8F"Y# MY4^"NDS?6Z)C;FQ%6!LYF?-P%;7:!<+*'6ICQ2,X'9K%01P'(H48(^4S)409L2!&D-(PQEG&$IQ8W9N>[65L!UA54KPS8< ) MB&;&Z&IH>K8X%2K;E)BMB)Y9 BXAX),BX*2/X?D!+JEYEAS@XL/VQ]%W0BQ_ M6RXVS^5NX/O.^;]?J]W:VO1 NJ.9LML&"FI77;P[;":[B7]05:WWO:+5YU MMG8I*EQ(J(2M]KH>M[QVUT3MDVVOT4N.E?/JJ..FJK8^/6-3 M%D:(2(Q@R"+EFJ(LA3@(U']0%.84"Y9R:E4K[UPO8[,7I5":PXH#!7AU%VC) MWGL>33,S<35&/9N';6: $K!RT2:@E-%C7;LV"'Q5LCO;Q["UZ]K4/*E6U_JP M3J M5Y;%H5T^4%>7-C-@F+0>)3%<%YHG;213B**$RL#K!N-C3V-R1BQ6E2VDM_9'+^)J9$R^H]6Q'7 &S9V_J L,74=/% M?H;E9.I2]X1^J?,%^YOZ*FI1GZ=6YZ_;,]4/A91"5Q,1#IED=JV.S4)4TH.M M^'LW(F"GP,0AM\P2[>[+_?Z [OO0PQ+C'M+/W+!SB@:P[&JPX W"/9C!1Q; M<*P_7!6D/ ]BP7[34OP)=*$VGH/%2Q7+].P+-Z M93TIDPMT2L;S4UN@GO'8:*.W45EJ-ZTW[-9A]&6$C6'S5#6[O M;-A"P4:*GU0&-GO+,6A)UXJ\X6J/5NC3GZKI!_*S_.G]H]JZ-:R4- CC*,@@ M#5D.49!)2#,1P" (6)PG,B8Z'\,B]LBPX['Y4*5HEI%#IAB;694^D.O9OI0B M@T.9RXU7+?4$E'+W<'9C"Y:O8!K3;H>-B;$$XR2TQ?9]AVW;<"J[]U4.TQ];)XZ0''; M)EUJ=+@-48=:!UN?KF?=7(V[Y8)OV/KO1(?"K5_/D09SG,4P#'JF-3)JSQ,B@'#<\-K.QK7-N0VA]@E:[7;@&@[YO<@S5-Y[D MEW1MF\KJG;UIK'[;3>&3Y@:9J)>4:*;CQ;]?4QWL,/2T895XK0/=5_?BB11S MU>BM_*2F/9G]ER#+:4)%'"!=8%#7448A)A"G$D'$LEBR#$>$6ZW[[J*,;6)O MA=3;95F*"?1GY5)$S&EHS'R%80#OV8HTI<=.PMJWFDPTHR 5X(X4? (.QJ;2 M"&B5?-U.O6?S$SM5#X%'/PY\P39Z0I?[[CU1^^-;9E8S_%O)'1_%C^")'NPWAW M,'HVVP]+PK4UL,+#ZLC]O.I.!^U'30UVO'Y>A?U#]0M/./B&^FQ^,==NYZU\ M3U:/^O]UM-(+F=4%+/=88SFMR*3\+]C3IXHG,B%:]CMF!L[A0"/1]RG>;A!NJT$X M&0-P3A6F!ZC\C]@;)3U1]LCA_^+)1?0 9*N; M>$W[P[F*'E XWC'%13#_.U\7Z]89S]6VNWJL?;YG'U_ES\7Z^XDO^:49^&)=L.OOVV&9N*25X*)[T!NGKM[O/X/UBOBH40,+P MN*H%J>X]X_4@]3QOV_ !?VAA?55<:D7"K=32^2:'J['4JM)!<:7V)Z]@LZ3= M-&;TF,;LMF(N^YOR& 17SH,N6U0J"EU)#O<**6D5]\:G_%?Q2S,&K(,N5)='1>$"WX=D M"#EO&P;."J"J LS>5Z;_63VU@VD"&J! C1380@7VL"KI(#SS=XYJ_'T2?8Y# ML>$90<>A]X58@Q%*.# 5=KLB'W^*)2M6^@CBVZ;,F(HX#_.$Q#"*P@ B'@20 MY!&%,<-4I%E 4! 19&.I[+H?F\EJI =[0BHGJ%$ : U*5I7=G^T,E^7HF%FP_C#O MV93YA-O:H+FAYLFR678^J(ES ^;8UCFVXA!3=R[+HW(*'Q;W8B[^K4]%E,FM MCTFF6* LBS"!69:F$,E0TQ?3 !*:467P<)A$1J3G+IV/S>!5HNK]WE(+.P&J MTZ8(86N4FVV;PT6V.6I[$,WFVH;EHE&G34_??_NO*CCD,*<\10DF$HL!H,=AK=&Q&7K,[B96^>9L_%7-:&%J8?9@Z;+6C\CW; MX)+5:@+^:T/FW;J;S^TSRK8$J32/5UYA\]O.(SQH;ICI>D:![30\]S?[ -$/ MM8E_6))YY>'=EWY4XSHPHM0^;;T U/.=I&DMQLUH^+9?'?@N^> MJ6K;A],<11$C@5#NL?*6490PF*=!#&46DX!F.248VW$(NXHR-BNQ"V@C6Z%U MK$4M-2"EV+:TP\X#97CK-0C\?5^%';$?@%J-AMZG3'W>C@S?M8^) 57PM MG-[(BYT%&9C.^%K 3@F.KV[1S:A^$,OBA>AS[<_SU7I9NEDZ\^[_"OY#=ZR/ MO)7')58[KL3Z@IJF/,XE#V".=44(@C5E:I+"+-.,J2P0 ;:*@'.69&PF=:<( MV-.DO.FN=0$[9?;H0AW#"=Q'T,S8#C(N?>_1>AL2:V-[-9R>;*V['(.:VJOA M.K:TUS?HRE*S5Y%0WR':D=4%FLRJRNDR 3) M0.889C(B$+$HA3G)$LC2*$(R#1A-K':0Y[L9V[364E;!]R]BOC&,36?ZSAZHR[;#XJN9YOI-A2WFV*GI2 MQ[/]:3=+\'G.=%U0\4%4__MY7I>*_GL#$0WP&:VPBML/9N-1E;P2R/MKYK8<@OD M70>0UA;#&!Q/QJ.[OT'MB+'ZQR;%_$57/^/I:3$OSWW*U)#5[HQG&K(@#"4C M4!]/0Y3P'.(XR2&*@BR1',DX-B)3-NAK;!:E$A6LRL/1*L%O_V3:.>VO#6Y3 MC\0+B+V[)25^I9B3*H5NM7>,[-,3Z83#FSMRN:>!?9).E4\=D^Y7["O-W#R) M9<'(JO:H Y&*F&093"6+($I)!DF&8\BH""G'G+#0J$+F:=-CLPZ-=.9E9HZ@ M:I_JUP'0]YUU+9C'7<5E?:\H-W/4X& %9\XKLE]RYL(3;NOWS0LI9MH/^+18 M?B;8<1"A)( ML&20\R (A,AC*?%TK3?I;_BY;[OO\?Q7]]$3QF8.:Q_(];S&:<' 3K()V.H MY6()M1;^/%A;?#RYL\;=#NK;VH)Q[.A:O^^2*[=8K>X%6RAS^?I):?">K,EJ MO5P\/^[18\C8_Q]!ID<&>S&8%71WAM,EO\PSK4$EM'?#Z M2EVS0*<]7\VDH0&3U"ST.LQ,LWG1TB[K$]'EZ_0_[Z8")T&*: 83RB.(>!3" M/$@RJ QN+),LXT*:&=YMDV.SK/^Y6 IB..UWN'2822=M>[:#_WE[__%F CY\ M_'K[_O[FX?-[?/$S7$^7;B)03F)&(P5;O=F&!, M96@4CF#0U]AF82D>8%OYKDPYWP/5Q*'Q!E7?KLRE!/+W/0!W96J^&X!OG8EO M .3U*?>GT%AGV.\U\;8)]:>Z=.;/GWG%[;3VX\_UDJ@7BCE9OM[,^>_SS6I# M9I_7XFEU0UU=PP96$W,[(6_+>EVD/\/E?^[TS? M7?Y&BOD[(94__$!^3B.$TX#G%#*$E3.2Y0G$+!(08X%#GB$DF54FB!>IQN:V ME+*"G;! 2VNX!OL=+K?3X]X'X>V/EB=@3RUP=L F@):Z :5H9]%8Q=!]S7->YFKO4-7GEW=U/>H*HUX4M!:#$K1?BJ'*;-4O#;^;T6 M2U=>5@]\6RA)ZE_?D56Q^E+,1;F$3+.(1C)/]1Z2*[.M=I0PIS* J0QBF%*$"8:O8,:1ZI'I*?^HT^ _SRO:FBE7&TQ!,($B#1!$"1*0IB* 09@' MZF\\C)#5YM-6@+&9EVU>8#$':_*SK((V5[^N%T#9=T)GQ>H1J [%4DTF\D.? M':X!$\NU^@GP6M7RS2JZVLXD60^?F9GJG?]5^<0+. M)'1.O#-TN0+IR>Q9=S^H*70%Y]@\.K?C>/?"_[&I/3=-$*Z5+6;BFUBK+VKQ M)'30UL-"U]BY6RY>"B[XN]??5X)_GF^O2'=<-=LKS(QPFDL:0AY0KFMW<4A8 MFD!,0H1YDLHLMLI([T/(L9G>/1VK6A*UEF NULH<:SWUO^O?F*Y4]5RKJFL4 M_K+1U0F+^:]@L8T/(%N-_VIYO=/'%V%XV_/&X]RS-3\:XJV"0&D(*A7!+UK) M7_6?RWID=_NC_'LSRKLHD#V^L#YNS_L<$%\W1'V(..R%48\@G]P?]=F7 __U M;%8S5.T15#6'5J8TV"UMC,[(SV;@#"67H9_=W,SZZBAV^4N^DO?)50,H&F02AXB!+-4YLI=#$.( M@T3 B,@D"5B2(&QU[-_6V=@LPN7 N+VX.!="UE;$S=PQ7SCV;"Q\0&CM&9E@ MX\G#:>UJ4$_%1.ECC\/H'2?/0?DRRE=9/#U;^PM';X[-)NC5[VBOL%_0V\I9 M. ;)R$6X I\!'(,6:/S[!Q>@XH,J1!W#I*;=U_U[H(WZVWN@P M@OOJX/A^,9M]6BQU;8XIR:(PC' ,LRC*($J2%.8\DC#'(F>18%&&JS8(5R%HO>H;XN)IX>_J;="UWU#U MX^7?]+5KXP2^;&,)O_TT:LY2LL8QMO- M>K4F?O;Z'Z!8K3:"EW]>[&#X*PBS:!*BJ/R#_CF-0[,FG;E23X;=S"YY&LR> M[=,A5VH=!KXG:B]DJ9?P\$^6>M+36Y&E7E*YA2SUXBONE3YU/1?3]?7B>R/Z M>@]J6!Z4+/*ZUG9"<54=R\,6!Z]C>5:AJ3H3Q* MA8ATM#T3RF^6-(=84@*30%(4QHA%U"@6[E('HUL_*Q&M(M4N@M<^D7U TOUZ?G_Y19&9Z'V3[8[@CEM@.KV.OQ@U+/)VA,2-%("&\RL MO(]N2)QP*KI)^VSL9F!YK@[O*Z:_TH &E"@X%<+('Z M(R_60#G>ZA&[/78KY&:;;%] ]KU/:4H;J6]6%"_Z]GD"WE?(E8R@'^M4AU_N MA?JD5V1VN;2+]<;;!"-/.^_6K@;=>ILH?;SW-GKGVJN"RA.9$B1ED+(,QIJ* M'X6A)N6/8831,)^?@Y9;']7:@AB_/&,E%JN'#5&=A M4DA)FD,9ITDJPTRF26S#L'\5? ,PZ>L8;5+Z$[K>8ET\XEGG0LW7+16-S,"T MO6>QAVBX2Y:;UH_KBMN50Z6]7ZW4S;_1OZ>^2.O.I_*L^@/OYK4ZQ?]TI6WRIW9/GP2.:WS[J)E;+;4A1K?0+X M=U'\>%13XT8MI^2'^$TUOM:5<;=<%-,@(E*BD.O"E429$(&5!8X#F!$A42IP M&B&C^M3C4FML=K^677/'+'5"9[&L*]CQQ6Q&ELJ(B65U?V-9S&X<*Q5.7\'^)!\LGB,:=R],8:,0JF!V4E&H?.%!7IDTCFZ!1NZJB*T M/[ZH_SRH5DHVD"R+<"H)@X+H$C9$;9)P1@(810EGA&S M>43-K,#5./5L ^PANB[Z^AB"/F*NMWV\7:3UL9JM\=4G#SOZ 6OE5&AGY%96 M:>$W\]*M68I'Y=F4Q$WEOS;D#G&,2:2]@B"/4XAHH$P"DS'$(1>"(8QB9!6$ M:=G_V(S%5GQ]4'@@=T/R8$#5X&5@#/V+_N#NV^_P@;2]'^*&ER__Q++W8?T6 M-VA._!G'9APBX>[%L_H:']6V[&ZY^+$D3U_5^X\Z=KD.8=(%/%D:$"@2S4D; M)C',288APUF4I#S#(3*OY-G5V]A,V4Y>4 L,2HG+X&Z+V+!.E-LME7?L>O>% M6F!SB:WKQ,\BT,XGC@-%W;E]AG9!>*:PM$;D=38R7'B>J3X'L7K&+SDZENQ1 M\,U,W,J/3\^SQ:L0W\7RI6#BPO'9K!PS]=.MU*%&/^8ZC^5.+(N%>FZU7E5D M%@$-935&R/4 MZM9WMS*<7V^LT8%C;_Z6:^R^>"8%KSV,FSDOK[&K8+4Z 6A*TS1) HXA0?J8 M.(MR2 (60?7%I$D4/ @?W&$)S&]YN_ZEB-&DQ6OUL13*NZRKGCTMENOBOTLK6$OP7X(L']0XB6F2L83EA,-0ACE$ MN:"0IBQ4/V',,"$AXE8QT M: IY:,E9&1^YI\X$:$U J8K'@H[78>FK=*.C%,,6:;P.JI-RC%WFI7-DQV/YO;&&%&&>2Y2&%,2J)UR1&".DFJS@BF$:6"!#2!F*58 M+0:QA$2&*10YPRDA@DN<3.?BAZXW_S"B-*V="D;3-:^FZXDBO2XQYU.R*AJ] ML>5A[7T2AC=M(QOA_Z$9564UJ/I<^D^4,74Z>'^6M*@]R?]GY3Z=#LG@"4YG M1'!;(;]NY@4KGLGLW6+.&R*R+ Q($.K<8J36,R22"%*9<$A0P(GZ-XRYU=GS MN4[&MI'9R@BH%M)N43F+HIGUOQ:;GLWT#I92OAXJQ[UB4)O4IN2Q M\6A]UIX#3AF30CVYJU7UQ8)0]?++(_I&:R$OU$#[XIM9M1L3)VZSEF8'XS;K M5FV?V\S@:<D5E)=$96.D[@@Y)6&P\0AQ.+&'3+44BS M(!9A0F 4900B3"7,PR"'88!C)-.4Q22I1^'CG+_M�"##4"MVR]T -0X1_W M@K^9F^$?T9Z-^ED*NIL#*K\]0CJ/17RM@/)5EM>LTV$+[5H!<5(ZU^YM5Y:Z MJM:[)B&<;\0THBB@ :(PDYHB*;RI\CM#X M[R6V-P][^D[ 5N/1D+:9CLI;7SATROGGN%XPA=O;98)QAXY7!XN7LOO/\^^Z M>=7AW7+!-VS]=Z)E6[\J?W^Y(;/[O8*JD0P#%$@"TY1$$$6<0,PYAC')(H02 M%@7$*G#408:QK0:-"OIVLE$"U%J 1@U0ZW%5M5N7 3.\Q.AW&/J^X^AC!.SO M0=PQ]'5-XB#!L+2BF'ZBPIOGZF_H:IT*R M !%,(8E"!)%$!!)]Z4J2E/ @#2D2F8DMO-3!V Q=)2/8"0FTE&8F["*([?;) M!S0]&Q]+5(S-2I?J+7=4ZM7*7*@?=E;B8H.#F( N=9KYW?F<_07JU_5R]B"6 M3ZM;^;#DRN]Z$#_7[Y10_S0MHG6YA;'-T:]$]5*H5:X45Q][G;E4-2^KU0)= M]]VS']3Z]AU, -_:-%!*;NG2^AN<)PNH5N:'>P2NENU_4MH@Z?=Z\]^%>O' M!;>>[Q=>']MD/ZA&6\EJ/K4O0=0]KSV@T_?=XRDP/4SA#ARNJM%[W.;@57HO M*'6N3N^E1P=+:?WW8LH(P4CF <1ARB'*X@3F,Q)K#N8/*2P[C7F MX+_P?SPL+"O][K\S-DMTL\T,TT4]]X_!)]:E?@^P,?!6'&'IVT6YB(C7.K[G MM'=S3/8;&LX;.2/^@0MR[N\.^>(W418$P?=_;^[;/8,VH]3^P:L$I2J$4%C:PN7,@=R%FD?/M#<*!4[Q8D/:5VFT'2 MFM+=T<1PJ=QFNARDR)\QE7<_;7Z%^J!>-NR;X5]?RF^:$84JY@,H, M!!"IF0BI).I7A&,4I(*'(C&]0SW;P]C\J4;(AF!5B5F6 S6_1CT/9/O<]P)/ MSY/>&AFKJ]16[9WN4L^W.-AE:JM"^[>I[0_:GTV4VRUE#\AL]GI'"OZWU3>Q MKDK46%^TF+0UMAE\N%>OA0=:>O"R^@M0"M3EF,R/-(P@[3[J\(UFSQ/>&,@> M[FYLH'(Z+S'J8+!S%!MU]\]7K-ZS-R75A>\-KZBPRW7,T'"^)?AT;/T_QGN?5:WM+$V.:F%A64LH):6,TRM5C/%S93M0VS[CGK":Z^=^(M M2/6P+!N XC2;V]H=;%H;*+<_OTT>O[8PV2=2+,M4DOHN<\Z_%(06LV)=Z&- MLMHL!;^=WPM-#ZN,^#NR*JH2-KM//681$5E ()>IVL(3S&&.D81Q'D9I%$J9 M98X%R3Q(-S;+4VE24O?OZ0(:90!9 ZUUE6(&-+4IV*H'2OU<*Y#Y&&JS \8W M&\">;6&CEPX2W0W2!'2-J1K%HS&L2X\!K_:S5_B]5Q_S(=L;51WS".OE:F,^ M.WF;Q/.//\62%2LMTM]%\>-Q+?C-BUB2'Z+^B[A;%DQ,<\D#C!&&08ASB-(D M@X1E,4>V\JR)W9->+$4SSHT21D=KC8')>,N7\QF9+G2 MM:@&9M^U_"@,5YKQ#77?:Y#'[/8][2>@T1_4 #1_U36(%03CR7:W'+.1Y+Z; M2OVGRH2W' K?>?&VW3MR&9Z07NU38U449IK![,A53BG-2<@S&*140$0# 6D> MZ0I+C(I$Q)G,(IM5S4V,L2U2^R[T12XX?1=0O!1KPU*=5PZ4V4K3/_P]+QQV M='R];E"NP](78Y^;$,,R^%T%U FCWW6MN2;-OU=6>TEFG^=<_/Q/\3IE<1;' M"4]@CC)=G5B&FG4*PXP1&01!Q (6V&7-'_4P-IM7)XC74H)23*#DM$V,6!TZ?OZ#0:?[\I0?=W*"]TX?MT<2'8L5F M"WT2L2U!%8449SRC4(H@@$CDFE..)# -""5!S@),I(W;8];MV*;\GM2&==,L M839S6OR#U[-!V!-XLG\.OA/::WDO-YP\.2"&G0[J<-@!<>Q@6+[M2AF\5,Z+ MVA^(WT@QU_[*[7SW;]_$>AI',0FB\CY*U[;% 89$D!0F<:87CR+JD*ZY852-_YFMLDKJCV; MI9U<$Z"E!;]H>7_5%SO[?U)"^Z31-<3'&[%N5W\#4^T:JG]*OFOZHGMI"Z:3 M1,Z?7M49P%.:,YG23, LX!*BE E(F39'%-.8Q4D0^WH*!M ;'NAX!W3 D__MB?[NK+0B(&C#U*F2@CE$'BLI&'0Z M>"4%-LA>_F#8$NAVOT\/]/PAXUX6-R+ET+U^W&U+IZT*'45.N66 MW:M?5]-02B1)PM2V+8X@"D0 "9(95+X280F.U!;.*#37CSAC,V.-0J7_=,:, M :[V*.N%\K1*M8!H]-+'JK5B8*DULTC\O7Y0VPWA\$/5NY=6C]+G^>'5:*T. M4/J AP6H-0);E'>0&Y-&[^^E^$RR[TA MZ<3_&VY6*VF(J*$1#&#(>8)1"%!,(^2"&*F /+#L=F M(4JAP'NR7+[J4,'VVB9N$)OMR'T"U[.5:*4"7$U *>\@C'\'R/1/[E=U-Q8> MOP/E+2C[#M]SLRMU$BSY67LL[\140R*+(<0R1IJK-A$AB'3/U% MDD#D5K0>K88-3Y*Q.W&YI=:RLL1V-:& MH@,'3_;A4B^#FH4.58^M0=?CKD;@13F&B^6K-C:K1\%_6RRX3I&_E?=B)98O M:G]/$*:Y^CY@+$10'ZU%60R3)&()SE(I#44L[ 5OX2H'+>T8=/]L([=-\&"/DS91T]SBP63&&X-3$F+_J?O?8 M79/Y[TOE]]Q*N9IFJ6!9B"3$<9I#Q",&U6<70AJ%)$*,(3>F/4LQC";5\ 1\ MI7QPH02<@'DUHW2DQ(M8%J8GP*[C8GY#Z1OF,<::3T"I@QJ)H8O GV W:#7X M7>\C+ M_ HU;??C39J[<;=ULUH\+U>CKA\43*>9301@B.GF4<(P@RC&&%.=, M>5=Q@'F4AXG 3MNMHX[&YE+M[2>VDH(_*EDMJTI>Q-9R[W4%8L-MOBS !IJM=;E7("A1? M![JM?0U[FFNB]LE1KM%+KO2#G^>\K$1JQ3Q8OS2V.6]>D/54_^X+7&?5>YZX M9Q@&)SJ;K'@IN*[X[*<@ZT4$KN 7;%H:F%KP2(%35L'C!QR"$M52K^L@K6Z? MQ?QA\?$G*>_.B\7\W>OGN9H+LU^C-J-1/_(]VU)%.BE\$!+K^/.]N0'[]X(=(L0P5[!'R@DT/\@V$4 .F/8 M&O%GW^IP$7[.&A]$]+FWXK;WTR54;N9<_\_'?VV*%S+3^YMMCFS">$YU-5#* M<:IYQ6)(D0B@3!G.@@3E<1S:;/[:NQO;\E'6E]&4A.4/>P*;9-"ZP&VV%_0' M8L\KP57X6>\&S6#QM!WLZ&S0_:"9XL<;0L.WW,S*[?I1+'5,\E(\BOFJ>!'5 MV96^JRAO\Y2=N]/$>HOYS7J]+.AF73*F+.Z(SJR=ABBC,J'*WX_C&"*:8)B' M L%4N;9"69Z4$39=+]9D9F9WKI3'RC!MI>IO8I7JE&DT6WU 41W0EBG+OVZO MX];DIYV%NG;DS$S8@./1LXVKAN) E:;B1I7AO(TU4"I-0*T4V-=*[TLJO?P9 M0T\ >[*6UTHSJ#GU!-VQO?75K"OE UU_USRW);7$S0LI9KKU3XOE=V7XWR_F MZV*^66Q6O\^7@LPTT8&6ZVZQ*K1 8?15/?&XNEU^6C' MIKF(@I20" H>88A$&L&<$P%I@$2(J.1I))H@"3.#W:N\#M$4/1OTG1J@HIR8 M@# "3Z42:IS!#_5GY?':TDST.>9FAO[MQW&HQ$FZ!CM%)V"K*I2+)=3*3L!. M7; WX"578*-Q.>Y?M^->J:U:VRE>/N^3(V. ?+&K]&GK -S@^R?MWNA.,X35+!",QU]#_*LASF:1S #&K( MM?MMN.>[S:J8B]6J/*9<;DIZZ:ED$1,AT<$C.8,HCQBD.*8P)#%B,J9!B)'Q M=91AIV.;W%NQ]V)C)X#6DJM]^TYTBQL0TQ$PN&SJ =>>3<0.TOL]2!NAP>=^ M(;6X2NH!VH$ND'Q ;'=E9(E5ZT61:5O#70]9:G=P*63[[K45S8X]PYW/^$5U M^GDMGE930E&&49Y"RJ, HCB+(]5ODSZ?J,J7A:P7*[29=/(E2FF MN]C'7?PM3VE(0JIVFD$LU4Z3(N6B1@@R3FE $4MH9,2E;]+9V.Q6(ZMUME8K MHF;FR!=.O;N:M9@'!-J]A#.;(.([9_1<5V^3+-JB],4LT;9W_%]<*^]K1E:K M0A:LJK+$_[%9K;4O_DFI=7/[_G-MP6[ESH8U5SM3$DUWZ M.7+BBZD]]XNHT"CWWXNK&;W[^VS2.""$1!'$.@@":2;D'&?J*XJ4HYUE04Q# MZI!_/*9O9XA,Y?X^H+%\*&:K[MN.^VA",DX^AYVN0*]10&M;)EE_KS^"_0W( M+J!CF( -+P,S0"C'=7*.)LC#"]PVX1]^.G1T>*H5;_[CBR82/:H!>2]T>FGS M1\W=&$YEFF-"<:(V2'&B2X/$$&>+)<)&S'Q-#V]XATWR:]$1V4XITIM;N5OWJB)!KU:)T=H?-E M=&V[']:6.H)S8B)=VW&S?'4>A3:Q.O1!7XG^O5@_OE>F5]GEY<>?;+;1*9&: M[U#]']=.5B 2G$D>0YKQ "*284B"4&WG")<(T42R+++N)ZQ/KGNV:(\R>#]I= 70B M)[#J:##N A?U]ZD-G-YW\\_4!O=>Q[EHRNFE(%,6)X(F,8%9K'TO3)07IK/# M1!J$B&&."+$BF3]J?VR6J9$-$"6MH7CI@T.:U_G M@M*>_)CCU@?U42ZH=NQ_7'K,9S[Y]B)_BE%.$.,4$@H/PD<&,ND;LF(_F(0P>($N=GL]PADW[[$=1AZRBL_0:;7Q/(O;Q/I M8ZBZ66KYZ6MV)H:+8GKS).:\/!C7Y9(H0:&02-F14,<@REA $O$8QF&84BF# M3*9&E&0G+8_-;&R% UHZ,_-P"E>[(;@*A)ZGO*'^QE/[HJXMGKYZIYJ_ZH?= MM#UM:9 )>E&!9BI>?L UA.ZP_,NYN*\HC'"B9AX,A8ZDDT1"*G$ "0YE@F4: M(&092=?9Y]@FZDD=(]NPNFZ4S99SS]CU/+]/8!LBV,X8(&\Q=]T]#AQZ9PS! M:02>^:O.;.5E:BJEF0Q6I*A=@/.=5 M+=U?&HE_U:@V0C>!1 ^MJ+K0GINCY(\#W:#/H0G1S6$XPXYN\?);T*A\$:O5 M@YJH32;],:4&XPSQ4.:0)@F!B"0!I!G)82K"($\D#Y-,#DFCTB'O^*S@&1J5 MF+XN*X0"-@D6E2]8_ M$8N*(>Q^651,._5*Y[IN2A.7%0"F@F1"Y&$.>1!QM5$/$IB'J5IQI(AC$HDT M"JW**1KU.K:M^O88F>D?Q$YN+XRN1XBG+ D%)A@2A"A$ 1:02AK#A 61H&J7 M$K+N>1ZE?@MVC/D=P&W(! M!D.ZW0LONUG_KXN7LG#';N=3!Y?=+V8SM3[]FRSY-*"!I)(H:Y_F4BET;+:_D?E@9]_$7OZA!0>UY)9WL48C8&::?./:LV7R M :FU8;+!R)-=,NIR4+-D \*Q5;)ZMX<$(WUNK,M=WBO_]TZH3['D_HZS,,PB MF!/E(2%$,D@Y*0L/)$F:(HRQT:VNJP!C,U8G"4:\EADHM2SC[JT'P\Q6]0EQ MSW:K.[.HD1]H!2:@5F&@W*(6\(;(+3K7_7ARBUK L=7_=*.-;?FOJ\^KU48?6RMAB@6?YHA*Q 6&84P3B%@> M:F,80<9YQJ5 ,L-69*A>I1N;N=3!HH62L.2N6TA=)>%I,0>K]8+]$VSF:@SK MGY_5:ROPB_)75J5:OUI2='D=8C,[^V8#U[,1+L6#I=3@,%5@IYHNU[;_7*T> M*/6;5']:@4I%[8162GHD ^L#>U]D85YE&Y9,K ]83\C&>NG$@3=7K315:0?5 M_;U>@U8?E+\]6SQK%A3V.%_,%C]>JS\T"6!-4MCJ9JZ<\UG%3O-8/*]*1H'C M0 SUD*[D*9[(\I^KK^*)BN4TY+FD-&90)'F@=OQI#FD>89C&21 D6#))B#$) M[UMH,+8EYK-:160Q+]8"SHJ7TMQLXY>(5@*(;8IF,8?/RP4KKZ,:?(SIUM[N MFVE?C_X47T+?=Y5[ZH-*S0G8(@!V$&S_V*"P3>Q= :4B. !B BKVFI.(N$GY M[ X/\$>%B.$!U=M]219LR6/_H@:B7A[]EV7'Z_R6H]I*$OTF@@W'./V6N!_0 M5[^I(&[[]\N8)L-^W7BC,U]V@O)*JMSV^V[KQP:LXWV<(#W[:681%1I MP:L[XPFH=7M53\Y*PZX/GM7Z\%TYLVK):/X,/I2'H5IMH-3WM\WV@[RG??65 MP@RZD?8#W/'.V5.KCE:XM.[;UG9)!MM21U% A:0ZY8]A!!$1"!*98D@1BF02 MXR"/C+:VQCV.S996 O_5TH1VXFIH)7VBU;,A;'S=G:T[R#'JH=B4,3J^C%5G M?\/:(U/U3TR.\8L.!W#O%S_FXN?[Q?)Y41$]*QA#Y3\J#;/O^EK@MBREHO[E M\US? Q4OXD[?$]2;678&!Q9#8=XS]:L4@3L:0*T*N5.OH2^U 94ZI3_ MNE6H'!6GXZ,KQ\?B(&BX<1KH2.?J\?)T%N,'V-93E2N[&.Y\Q \6!R<=GIIT M\Y8?EB7_UFO9475Q=1[; M=JO1$ZR].Z?FB ["\-D*F"=RS_-]O"&O9ZO2[92>[:^Z>2>_+1;\W\5L=I8X MB+& A\H=28,PA,H9$6I7G290T@AAD2***G! I&;[D9 MDJ/4CF\;?;)R*S\4LXWZUVKO=+M9K]9DKN,SIU(D>9KE,<1Y2"&*6 +S),.: M2TQD,LFRF$4VEL6R_[&9FEI.\(O3^8@M^#R*2$YR =,HT,4M@P@2&A-(49 1 M21#-&+6A1>@3_ $($AKQ89/I5^>NE)P)Y8]PQYI0GV"!Q4X?]X,MVX$S6RMZ M'(Z>%X^3),!*]K(09 7[GMP34&OD;T5Q1,[3$F/;^Z!KCB,TQXN0:S/VQVR? ME*:+N5KFV$+U]?KQITX\*P]';N7GIV=]HUTP0HM9L7ZU/G1S:GQLBTZM!&BT MT"6NMGKH.7>LB?DYG!OXW:=RO>/>LX&SAKR'@[JK,'0ZMG/K<;!#O*L V3_2 MNZXAA[":CT_/L\6K$-_%\J5@XGR^G1;GQUP3HE6)=.\7J_7J/7DNUA5-VLV3 M3L*>)BSC61QE,,P27>='N8DVJ5.50:G>!.PI""H- MWV@8+0)VWF@X!XK>V0[KJE*OVF,!6HXJVQ_59?>(GIZ0+XUO,=G M?\/%^O2 TD'@3Q_M._/F5US7NKZK*8^PS!G-(,L0 MT[R?"<0$!1 C03*"LE38ENHPZ'5L"VA#%*[9(M;D)Q _]5#I@GO%2I^FE$5X M]1]66QVL>?0-QL+L+,4[PGTOA5(*5L8O[ACS2P8E<*C I/S#3H=)UYKGPJUO MCIP_;GV#/H?FUC>'X0RWOL7+5UJNF\WZ<:&3S+ZI[^OF9[&:QI&DF"0M7LORG6'_:S/D)!32. M9)8SE,*4)8DFDF00LPA#AHE,TH!3$1DEZQCV-S;348H+GDIYE8NS6B\W[??> M3B";F0V/T/5L.RK4*E%!*6NOU-J&P'@CKVWO;6#>6B/53REKS5X;F+BQN4"Z MX;RL\T!F=9QV9?34]FZ:Q#24&4,P%;& B GEP* TA22.B/)@1,0SJS#''F4= MFRW;2=I<>Y,F,1W(Q1+\4#JO#]@=%U4JU5N1/!I\#F:68"[F:7J!\V>;941\]G]?OG(H;<'-:C6)" ^+.L7Z;KEX%LOUJV9J6-_,N2[?]:P?F<991J,\D3 ,,ZH\ M*Z8KU60(QFD>RB M$=[.GEF,B)D]\XSR,/:L$1JL%PT/ [C;HGRW0_EC)\K6]LP>,$_VS*+C0>V9 M/2#']LRA!1>&A^]B)IB:^W4V]\W3VIS.X?3=L3E+>D].YJ^@D73+*F 3-W<1 MJ'9CX@.CGDV&*SR6= N7,7#D5CC3X(!$"I?5.61-:'G.D>YT>U2D:1@^S^O0 ML/=EYE=)_3(-XSB+XDS !$FJF1(X)!'B,$T33'+,!$FLBG=V=SFV*;]WN/NL M1(;%O FNM.1 [0;;S)GP"V'/%F$/O9*/1:%7RSL!E<05Y9-'%E1C>'S1H'9W M."P/JC$ )T2HYF\ZI&S<;PG1E.?Q8TF>OJKW'Q6<0QF9F=O*"6F!02JQI&P.+>/Q.E-N-C'?L>C\@ M;H'-A7.T$S^+) 6?. Z4>7 EGG:I!*;XM.8'=#8R7-"_J3X'D?S&+WGU\>J/ M.9(1CE",H8A1!A')8H@9YY"'J4QYD@F46Q7Z;.UM;";WR#>!.]_$BV=G9&^] M S>L/[>'F4?C8 5*OU[/*1+G8SJ'O4I>RQ9]3Y_#6U MPJ8TQ@G+!8.,*5<(\1A!*A(*0YJ1G,59)#FQ892KFK6:] ,0Q3WH/JI2TY:Q M035,AKL@:^7[WNZT:^Q8HLOWUJ5J] V*;5WN8QH7KV?+5;B8?%U M_EQH N#/?]_BY5Q.@9"]>"KY1)JH52*MK9A.4G*Z;6QL>[-K91+W]ZV>CYZ]( M@3LY!BT=P0#3C). P01S#!'+*21"GU0F(DPDI@F-0NL,MK-=CSR.^+S?J1 M+I:+S8_'K\H;)>QQH[ERFHI_08X3D:GM>!A',411G$",,P1Y$+,X8%RF@AD? M279T-CJ#L2>NKJJ])[#%V5L7P@8'E1YQZ]M@7(;,Y=RR"SN+XTN/& YTBNGR M^=F=9AIBTGJHV=7&<&>;AMH<''&:OF-G6;DHIN\U;>NV&+?$/ BP3"&G4K/D M8PPIE03*G*[5W#PX &'1UW^>@7V] 5;A3N8 MEX8==AO?<1S#/Y3?68WN&6ID_( M@]/N /?8_X#.<_\H'CK> _3GRF'Z(E9KW5O%>OAM,==9?4J\^8]IE$F&\C2$ M&8LUR4$F(.4XA$&293++LX@0H]L4D\[&MH;O9%5360MKRUO:@JO9F:DOM'I> M1_> JN2<@'U)?3*7=N/AC;NTI:N!V4N[E3[E+S5XQ_&J94-7XE\;U?3'ES(9 M>$LAE 4\Y#1DD(E0V8HLT@4*40(1C43,":6YM+(5%WL:FZ'8"0HJ22VO5BXB M:GBSX@.GOEWM8XAZXESJQ,+7ME2]^12I?,%UQR1?VPJ@Z/9 4;TR#V;$!O[CZ_GYSG$MUM M(70<2UT?1#/,ZF(M1M2!#FDUPP#O+3.G9W$'3NX9!OS3_*"!^G5;@CZ18EFV M4Y-;E(+>:_HMM5?^45^@TIPC(4,$)=RV;]1ZMKU:W.HH5[/OU5+VD*QH XLGRVC4Y:#6S0:$8PME M]:XKA;$N2L'6&]WBS5P9L9GFJ;O1=:,JFK_F1C>6) P(Y9"D00"5I8D@37@. MXY2'% F&)#6*)++N>7SV9D_PDNZM%AWL9+>^0;?P@U;.I MJ4#:D[(\ZJ_E]&=8NK'P9$E:.AK4='0K?&PK#-X8N)R09O]5>TJ17QX M)//Z!O-ORKP)M5>LMG]_%\6/1VW=7L22_!"_Z7(X'Y2YVSIQTUQ&B.>(0XS5 MC@W%)(1Y$&&(TSB+>!JD)+;RH$:CV=A,7R5^67*(+V8SLESI4M!5O,-0U8>\ M?SV&ER=CD7=$1MY#9:,*'; '#ZB6CK4"J F:FH#ZPU/?7872!#0X@1HH4"(% M-%1@MP\?04FDOL;_K0LH>=?KSU%NJ:_A]%:*:TTDF,$$L5NMTD,G4G,GII/FQK9>5@(!J"2VB.T]A:U^C MK@>C[TNI"H=2.)=TIU- +()4KP)FH-#2O0_%5_CG1;5;@S9/WQHNU/*BQ ?LN=^4'NA;V+1?%.&9 \'+XW-XBCAX+>/MX;6YA2#=D-SE?H]VYA&UHL M=6!/L:QW]<,6$C8>])ZWZ%X'\D^S]=YNKO?TKHHL[33?[;A'L).V'::WWB$; MR_OGV/G:PN]M1VO=L=O:]46L5D+<-N'O7W1X7'-N_MJ4M/J@$^32+(LQ49M6 M&>40!5D*\ M6FA02CW9WD^^3C3;&Q4ET;R_EH\J ?R M4U>/5OWHPX8OQ5Q\7HNGU31%F'"F6>'RF$,D(P$I90S2+,]8$- T"Q*[-,>6 MWL9F[RMA@9(6[(D+_M "@U)BRYBL=JS-S)$W!'NV0=> YY#_: "*MP3(MKX& MSH T4/LT!=+D)3=C\IZL'I6OJO]'7\N\D%EII+:$HKL,OC26-,,AU9SNRJ=$ MN82$JY]DB@-&68?1/6_ZO?9ABLS^_$G>]0;_WNR%A^E%&P]#06/@XP)9?F8 MQZ MAG .:YY!%E$(DD( X03HK*PA00@AF M9JST[B*,S>"4OHZ<+?Z] GK @6Q$!V0K^U_M3([#N)@9HG[1[MD\Z?U&"78C MO@X_^$5KH/8?OX*M$GWGFKJ#Z,F>.0@PJ)5S!^C8]EW1DE.LYIU8?!,+ZVC- M_=?&9IYTU.+=QUOP[>.M5GHTH?T1$ZB[G:.=6.-,\B-9"9A#&/)$22)9"07/V*(IYHYE>" MY5U1J3G M67H9#&_UZBZJ[U:W\J"EX0I5GE/@H#+EV0<R3) MA(<93B*88I%#%,<<4D92J#;R,9912$6&K?A56KL;V_3=20LZZB*[8&NV]OI# MK.?I?0(6^*.4%?1RF6\&BR_:E?;.AJ5>,5+\A'[%["WWD@QS-5RO?U\L__EY MKC;B3*Q6:EM^*^_%2BQ?Q&HJ)::9<=YX%5,2YQ#2WO&WH M['-LUD1+"HLY?*YDM2_/T(6QZ3V#5^1ZOVZHI9T +6^9"51)/ 'ZK&\A02.U MW\(-AA!YK-_0U>/@91P,(3A7S<'T5:<#N-]4+S5EYH?_K[EKZVU;1\+OYU<0 M6&"1 N%"]PL6.$#2DP8%TC1H>G:Q3P9O2@4X5E:6!9B.X=PDUSL:$:-E.C@&/#VPP,2JKZ*E8H^ZD)="]-Z43^S/JDJ"BH M$/3=*Y(O\_K$*:H42U:)/UXU'04NV8IE>77Q6&Q6U<)+D\2+W01FS'-@@+,0 M(I8FT*<4.5[H1LB1BC3J$FANGJ@3%U3H9]>3 9SA1F3)B]O:C'7<6[V'"4S' M.SMMP* :HZZ&V]7H'/1V$D]<=79J]?H SD&CFV6#*=#F6#:<):(=>P948^O1 MB/91?A\=\]AC!-*(R@Z'D,YQIYW<_V"XNA>$\TUZ_!GE2Q$8^%24]VC)+I;+ MXB_$\>'__E@RFEFF(G34.Y55*/ M.'-;(WMYZ^XVI)88++G(@H9XQ;>D8SS$)DPF%R.P9PC#*Z50!&PUX>ZRTP5R MHT"A#?^_'4,U&@&ADAFV:#W@:@H\G"B,U9B$'N!>ARLTC3K- ;_BO;S=B-J) MKUG36O?KIEI7:"5*PR_1.B>+('.C),@\F/D^AD$:!S#%!$,O#)(LBC#SXD#% MWRK-/C?W6@L%SB9Q1:G![E#'S3+$E[G4\6$0H12B-.(_O,QGE"81#?""CX2+ M=P=^*(5IZ/]JE8"HY3[FFYC'HF/O L56C>FD7FJ&DEO"W;XYIN)!FE!(ZZ9'1@ M*XY#5KW.1T@_/['^IV,R:F(08G.[X*=WQ_?X-I.(XMH@S"A,8B?AG@!3&KJ) MEX:NR@WX-^90<@(6KJEO.;GR6D;%0I\W0)3;BYP(C>'O^A:5-DQY)@0\O(53 MK^(YK+ZNTITW9K!;KW-8Q;TBG2./3FW_B);Y+W$;IJ.LN4;Y:GU3!Z$6GH,] MG/D93)P$P2# +L1.',.81MCU4Y0D1*FX[^AL M48YC+.<&M"%GV"%T<@XXD,!U@]W-"'83NC5*8**M0^.QN2QW9910>[\3H\R' M)C:JSE=YQ6[R9S$\/X@\Y'C)FBK"AGKUXE'L1W[5Z8HV1[&]">P%V"?\%(&H MZ\" I7PKP5 ,290@CV*$B:L4L3I%F+EYH$876"L#MMJTU;-U>5N=WNOUZ?)_ MY^!3OB9H"?['4 F^(-& DV_)I_:D/&L ;:^[MXXQ)_:_(#\8W2S9UZPY.?XWI^SS*BO*QWJR;^R9K3;L$X?A MZB?W="NT_+A95WS+6:XO7^[*@FY()=C-[UGYG!/65(LOJ,NTBP2Z*LCA.:*;4W]*$E'-S\JT6#>M#IP?H%1'L!)TJ-3]6ITQ[>4+1 ME9LQO)R/?W=S&M_[&K*D>NL*DTCK:E=A1$:[+2I,PKS7EL+H9!.)-XO'IY+] MX M37Z-45_$+FJ%N_Q=&)&)^DL"8I:(!._^!(Y;!+/-"RD@JE@PEQN#Q.>?F MXIM.L60H>!M%;"(*'\[!JKFI4J&?BB0_,B:0<\^:@37L;'>DW8T^]O=^N.1\ MMUU598XW57W3L"K ':K3$B9VU@H(ZJ)SE)C1+@>C/ 1[Q(D*'U4L^A>%D.7+ MXOYZP5@2>A')("6>V**Z,<1NZ$*7^%GF>S0*$BGBL>V09+7IOKGI_;-^,.O8#GM> 0KG=-HIQSRT4N?SNNA^/X M]V4J$H:_,4=!T'<2>4O[27?9^D&LW5A[+?;P7MK>WR:&7RI4U:WD;OHN,F$< MHX1E?'.<> $,"$IA0H,89L@+490D41 II=KVIYC;U[&7\(3./&\ *1F+. D> MTZN:&C+JX8&#RNLZV^]/8/=@?E#!O5/UX2^2(E%E)(T34FL1*ESLDAS[5JFCT7Z9FJ>:9$#5A)1ILYC>,(Y: MY/(-BQBE7].#K?9&"I52V'-O@F27G\N]C6]* @E6L>_ MPZ4[4%74) R?:]4%M;ZB$7FM\3G8ZCR(%IKIBV'%/+K6%:.RVEUV;,"^MRI9 MF70"0Y@XJ(@":5%.\1%5B(]8//T0-R*H0P./N)!05YP,8@H1O]>BBHITJ:B1[DRTQGJ\V;03#KM<8_DII[U- G)0BGS2A MM73Z*7 ,4^\GC3.AU8S89JX_\CTEG^?+ZBD7.TRE,IC#(\S-;S62@EI4P9_^ M/7^LOS=?;N\^#\]["AUI#J,W[H7T &?8U\ABIK>D9AR::7UL#@]KKZG-J&H[ M'6[&GYX6J_S./U;3T%?EAHA;>*N'MA,:<_PT%9=4:1HQ&*1^"%&*$:0.]KTX M9EX0894XX\&9YN8>A*!M&X6MJ!.;S!V&5RYXIP4TPZYA(E[*D;)1+#1%N0[/ M8S5"-:KNZ^C2^ ##(40NRE'O<[.$L)\:/$D]J$6))W;NYJ(+%"N,6"727B6_.R MUAP2%)=R"8J!XOPTUZD.>MU!K?R\W@>%0-Z\W@M+(<%:(]#4DI#A^X%V$UCK MP7-/[?N!A/*@:+0';*L^0/W+D?"TR,#(S,3 P,5]P&UL[+U9MUM'DNKKO"U8.D23:($ #.!19O_Y&XLP3B"$W=AZI719Y M!G#O&+Z,C,B,X5__V]=/LQ^^X'(U76W]Z_ M_>6__?L__=.__E\ __.GM[_\\&*1SC[A?/W#\R6&->8??I^N/_ZP_H@__'VQ M_,_IE_##FUE8E\7R$\"_;_[9\\7G;\OIAX_K'P03\O)CE[]=_DLJ7A:&#$IP M 13/&CR7"92TW-@B4?'R_WSXEQ2-U"XK8(X54,IS<%HE,!83X^@U8VGST-ET M_I__4O^(884_$'OSU>;;?_O+Q_7Z\[_\^./OO__^SU_C_[CY[=5'5].'/DB/Y3_^S[_]\BY]Q$\!IO/5.LQ3 M?<%J^B^KS0]_6:2PWDC]NW3]\.@GZG=P^3&H/P(N0/)__KK*?_GW?_KAAW-Q M+!S$'&V^>DDXW2R>?*SN%HO0UI/ MBO(Z(8N0G2($YN#!LR3!LIA"$%I$Z6XS7HE>$=4;9:PP_?.'Q9K[SU]=A),R5(9!XD[#PJCA"!9AH#2:FX-2GX=F\#]^(3/WX.2WH0I(_36;[\UV6Y^-1" M5^M% \F=JX7(_92Y#6=K,JJX^60+C?^_9V%)3YQ]>XN? M%\OU)'LC>38,7/ *%*-5[V0H8+C)P@41LRA-E'_GQ3OA0/2/@V/DV0DDWB_# M?#6MHK_@P?O,;&0&O'<"E- 2G,H.,G="1RN=W <*].>@/&< MOGR]?+_X?3ZIE ?,')RH!M Z"U[)# Q1>T*W35&W@\7UBW<"A7\BH#A0GCU! M8K,SOEZ^62Z^3.<))R$SGY7-D!02'\$@>%0"A!':6:V\-"T>,Y%1%H2Q3D.1E3@1XR.=Q& O[=X-'Q46;;=@- QV>4!3')*!,L-.&+KQ.%OW+K^ECF'_ S7&KX[%D M8@(L!;Q$?_$0G2T@N;,!;6%:8Y.%?_.MNV&@XQ/)HT7913CP_&Q9Q75^ 5.0G@76]QE//SVW:#1_0ED ]%V 9&? MY_0T$L?T"[X(ZW#!UB1[ZR0K' PCE"NK#?B0">^HK!<&0Y$M#IL>?OMN$.G^ M'+*!:+N 2+W%73X/:_RP6'Z;6)%#]+J -5F",HR#\ZF CXZIE&1 *1H@X]9+ M=P-$]V>0APNR"QR\^Q1FLY_.5M,YKE83S9/6-@:0(D90C.(@+U6&DJ))7!KI MESF'^;Q,*,$4Y# M*C7A./L:)I<,W@?I1%*FQ!:W5@^^?#=<='_,>+Q@N\#'NX\XFUU2SSFJQ J" M3HP<(L\I?%)84[\4>@J?,X^LA9FX\<[=T-#QF>.18NP"!$3XIYK%L4C_^>XC MR6WU^FQ=\_9K9#TQT6>OE ,3T9')*P)\9@C%\$B;8>#.V0:@V$;#;B#I^'2R ML9@[R<-]@\OI(K^<9_*8<6(HQ$XA*4 F!2BM"@0M'<@@>$",#.-Q5Q4/OG8W M:'1\;C[QX-U!T?+#90J!=8>)\_SMG(BJIT"$"B8/L72)T1^0* MDA5&&(\B\3:NQ+U7[X:+CD\SVPAU9&0\(P[RAHM9^#!Q4K' N(>4-U>Y+("S MV4')46HK:I+7<3;BUNMV0T#'QY>'"Z^9UO_UQWO"^X5^<&A9]GRUF$US+;K? MY/Q5WE:+\OHSGE?VJ20>S_:CZSP/EO!AQ ^3VIQQB>\>N$5 MI (:BAM\J3C0M#D(!4X9#P(5HE(,4]Z67%C"*FXT?_&>\^6$L_7J\B?7Z^H[ MI!QJ'2X?^Q:_X/P,7]'Z(1EO'OGWZ?KC\[/5FEZW?/DUS8<07,%@4TZ1M^;^ #+'J3=OB9Q+8W0J78VX65VR M^'RQ6K\N?UTL\NK9/+_#Y9=IPM6[Q2Q/9"H\)"])5"Z!0H'@BHC@N"TY&*6Y MVG:F>@CJ'J=FG"+V(<'52/(=8.BOR\5J]6:Y*-/U1$IC:>-6@%E)DHCR$!0R ML#(J52*/66P[/TY5^Y H.52VA\-BL0ZS)K!X2](G CX2NE^0(9TM M/E>IO/SZ&>H2;/"V6A-V)90= BJ=J-LG!K[(>$U@$9&Q%F-LR:_D*W]:YC.-PY?6 ?B M9?'Y(ZXF6=N -:(-.:B:DDE[L? &$H6RIM RBN:.L;H?MVU]PSBE]4/ HYT@ M.[ Z%]'N_,.YA"I;DTR(IJW7@;5%U,0Z#O2]@9*%8L5*'D-K#^+)4X_S,^O/=*W36^BFIFYF-?%4#GZ"0M]IL:))EMD(6K(QI$S ME]&!5YQ8\Y:^%KS0MMP81GN0-TZ)_I#P&DHW'5BIG^=?<+6NDCH7W*^+^>)R M,4VB"1@2+Z"3(L&54(!LK 7I=9'*)%1\6V'&82=GC],S3IG_D,!J)OT.D/1Z M_1&7-QDX9^G2ES.B%"E$!%L3RU5MK!650 C1AXS2DE^W[3[CH*UO*T4C]048 M=!MLIX(. '6]EU\>HD[G9\34]37"N=4]_QS97ER]_$I")-5-YV'Y[6>2[(JD MD>KQZV(3<&SJ'6C%3:H M2IJLP$M#G!BA5> >5=Y6>M4"21M"QLTS:*KJ[\!H?[EW")X+ 4V\2X5%+:$4 MHT E^BH8%@%#9H)Q;57>-ON@H2$:-Y?@E Z1/8=0.CO6(?/D$R^4*#PX:(O MTNMRK_3H2F8UL\8:YJJDD*)B'H'$Q,%::Y(TF6NUK6;C$&SM2^-(_6J&W/4& M5=,3@N&YF8X4D.KH!6A33#73'+P)Y$'Z$(J7.O+4^D!_+P+'W3:'QT!F$^5U M@,T;=<(OIE^F&>?YRA=Y'E8?WX1IG@15-&.* 7+C:+WQ!%&F#$QEJXMCI>36 MF_4N=(W43&S8%-/&ZGA:=1:UJ\$2/^)\-?UR<>)#8^@!52 MHRH<,BV0&I\A..8$&!,ESQ2@F=0Z_^> ]BAS-20Z/C.N>P>.Z8Z<$6&L==0"[ M3?K WS5)73)VWEM+?U\B6&%+_#\[RN.I0TR&QF!"RE!"97 <1(KHF3&1M3M M X;CJ1[7*C8'TD-)(:?3:LSR^:Z4YQ]6PY M7=&O7M"W\P_GYC>1D7 M\Z?&Y(Y+XJ0 Z7BA5);?8IJ%U>IJ?-FS_+_/SE,5:T+.L]?/?WZU6+X+,WQ= MKF5S)0AAK,FZ3M7%2#MKJ!,)C$\@I4U):>1>MG;L!V-F7)^FTZ5R6HCLOU;\ M^5J9XX<:"P^Z6IY]"5/Z^*SFHZV(VQNFXDH@5YJJK;A)4NOU!8?+8-LVD[0PY(X58*S> M<(O6!1A'DCRN0][%26_J_&IG]%N=(9$Z]!7.OACH/YOMIS +\X3O M/B*NCVX6?/MAC4WL%DK;V]!7TSF];!IF;Q:KZ69E7.W[6C@5L6[-HEY(>%.3 M&3T0(KAQ.D9F6U?'[D+7L=:R-IB]&4U*E-ZH!";6/'599ZQ@JDZ)3!F9I=^W MYO(V!=W8J#9(N&N8CA!W!R>LY]1?S-ZXE@?SQ>ND()'!!I5,!"\Q@XV!C*3R M1L36N68/$C(N=([1[(,@.4;,'6"E9H'7'9[^>OE?9],O8;8YMEH_#\OE-]I8 M_T>8G>&$EV1C%!%2%#41W=8"!.(L.<4<_3*%T-JQVHFP'K!T% #N1I[-M=$! MQ*[N2B\2":Y=N!<8U]??70XN+L([X:,'Q.Q)@+*.'XR*'$PF5>+>6M4Z]MF3 MQ''O'-O#;D@-]0# E!9GM([>8D):4\3GK[B^Y 6]#58+!MDYXB74RI[,9YFM>KE:$#XR;@ ;0)"0_@M4\ M*%O DC,A4DB^A-8.^>/4C-O)O#V&&LF] P355I%S^L@W6@039K)6GBF2@0Z@ MF(JU"Y4%J;(L6F?DS1OSW'S_N W)VZ/D8-EV@(LW2_PO/@ $41V41:![SU'?X.9(W;M[P]BEIKH@-PW28^231" M& DYR5KM:QD$81U0/"%J8^/B=.M+Q?T!,UC?\@$" M!2,#LR0S+VWSY,1M!/40/C6!4#NQ=X"A.B?O=PH#)TKQ[*2C+=HG\KYJHR;G MO(9H7%!%9>*DM0-S^>X>0J8FR#A(F!V X-5T/EWC+],OF'\FR<\_3./L',XU M-W"B0_%1&08\2=I7&2+$6 S85)SR28N"K1O";Z>HA^BH"6 :"KX#&+VX>.U5 M?_!K3FPFP@L3D!TG3ARK X>RA\@=2]X[$TKK=.#'J>DA5FH"GT8"[P Z-XX# MZF""B[!/5K]=1TW"T+$F'=6I9J: Y(EE'H)%UGJ6Y8.$C#NUJ:7K=YTX3OXV)&0E_56&[][4HT2;H@@C$@;203:.H-F*2O1"'KEZS"HEO7 MC.]*6S>MH(;)\QI$11U8GAM\W3WK#)RA#4%!B+5LH1YX.MJ H1Y=8T#M* @8 M#FQ=Y8(-H_W'(7:,*CH U>55_IOPK=[!7AYYAT(LU*ZDTM?^I+0U0RS52)?@ MM2\ZV^8>\\.4= .FH_3\2/[$$4+O SK+,WKK/1E-R$)[KZT'D7D"9;,C*2&K MY54NV2)LELV=H\>(&7>S&PY #43?#X9NS(J[9$2)Q$R.=?9;O8]%X\!QX4 X M0>F#W#D)I87(A MHQML'0R1(:;@-@%P"MHF&5M?@QWH,0UVOS$0=(X4=@?+#9RJ@]3\T/K+]'5#?N]W"' 6T5TX%ANG>QB>9 M$H&\0HR@HJ,XE:. X$L*03BOF@^K_0Y)W3CHPZ&LI5(ZP-C5,GFU6/XV3[A< MA^E\TP7H_"3XY@U1245JF308C)QB6J'!L]H,B.25DF5*FM:AX![D=>/"#W_< MV5I9'>#P?A0\L8YQEIR DF2H/8 8F%ADTIJ8P>=$@4DLG"3"2VW&PS*+-I%3.5P\.&ZFTJDO\O82=@?Q MX//%IT_3BX:DM9O3O(8@.$^5%9>E9D5[0*>16.&& @[:B2TY@FB4*R$.,8SQ M$7+&36 Z"8Y:*:,#^[-%0CE+#,PC&%ZW9U090O8:2O3&<[*GBK4^Y3PRBV6P M1*B3H*J1*CH U9O+]VY8VG0\N3D0URH?F-,1?# )%"^T1!)WD)1T7'*3E6R] MSVVG:.Q66&WT?K\,MI42.H#4\^LQN ^Q8GT) JPTM9D.[>*.*P59.90\TDYN M<8#][Q%RQLZW&P1,K<3? 9*>Y;PYQ@BS.CKYY_GS\'E*7MH-#B>T,'A6-D/, M]:X BP57T 'F:"*S7.G8^FC]^U2-W;QY$%PU5D8'\'J+];@,\\NPG-/J6#U+ MZ>S3V:SVUWR!99JFZXGQB-I9"9 M\&JLC [@=8.#7=KL3X+16C 7P&(USC6_.IC,P&J?C,E&1S7 \>8^)(Y[]CF4 M71M031V@\+[4)C(5VNE9 *FY!N4?)D53<,8.M4Z[N4S'NT>= 6#I2 MV!T<7GTO?)X(9H)3R"A8KO-::Q>YB(X!CSH4%[TD^0UW\OD@3;O%A&PH+)WZ M//1XO?0_*N-6?_.F@S&V/'G('NTG'7KQ>/D63RFDS 4PP>J\'BSQ>_51M#WSXFXZ;IZ MFI>L:L^B,H5X(\\2E*:OR"]14+A$EF/(SK>^*SJ"W+'/TL:%:C-%=H#9F\R\ M6)S%=3F;W6\L?,F)"-N_%NQ>!8Y_%#8S+ MX935 1+WV!]NI)4DP1+CSD,,KM3KD@S12 %&!,Z9=MF&$7?V7O(3Q[:8#937 M/T(?W!9N<*M0..9J0VU61W*4%\O-Q+.FWO#-[A\]Y'4,I%&>A4+ Z9Y+9*(@A:G5F"9H94J/ 8_ M; [ 8Y2-?80X,!@'4$]WH-NPL'IVMOZX6-;=8&*,#E&* #(H7AL7&8@*:^<% M*;DWPDHW+-CN4C1NKN6)07:4.CH%U\^KU1EQPE/,B4D&DC%59U=X\([6BDJ: MUDQ@Z-(I@'5.S;B)EZ. Z@ U= JHFPDU)7F%IB@0QI&4&-<0A+!@M3)"&DL[ M/CL!JO;-:1HL^W(4:!VJD [P=2-[YO$-/@LO2BV3P)K^I]&!RQ02<1\5V5^7 M6?,@80>R1KYT&QQHK35S,-B^X#(NVL/MWE8O6>*V1 ^I\$C"$@RB#PQ$-%8I MZYCVK0_RMI"S&[R>[M5'*TWT9<-N;?5::I-01]"NK@[C-;@2B1=F7&0QQQQ: M5P<_0LIN8'JZEQ,M-- CD&ZE+DN&/M!V7FHEF*J-9")96/!:6&.-SK$,CJ:] MZQ">[KU",UTTP]5@N297LEPM2IT%_&JV^'UU;)K)PP]MG&&R ^7MDTNN7G2% M,U9BBB4H<*$8R MFV22XQ!TUU(-K*X.]D7B\#H/>8*H@S:R)K^D.DE(>0B)MG=A&&JMH^.\]9'# M+0+&A='0VKX/K@-%WP%NGN7_?78Q!._]XBVF!;D)FXG0URR]7^PKS=K,+9%; M"5(6$D2J)60RD P0+;I$/J9HGN\Q !_CIBN=&,6C Z&#Q;!Q95]_KAJN0_XN M1LY.C);&E5QHOY&L5D1ZB$0@, JRG4$E4;6N'WR8DG'-ZO@(>:B2XCAU=0"Z M%TAOIMBLLC'1W(M24_)UK-/?HA'@A0K@1&#(4\FA.=1NOG_D&:^] >Q@U70 MJ[^&Z;Q*[/7\Q73U^2+L?UW.!_?PB3$F!2D2>!?JC)9$WG1-J2K::2.R8+IY ML]KM%(T\)K8WZ#54W_Y@].=@G..'>H+POIVS>9[0%\YYN3NV<%*3]XJ7!G)B M 13S H*H]74\YD0,Z<):1\C;*1IY[FQOF&RHOA$-9#V3F[S\FG!5J^1>QQ4] M=HUU&/B<_L&WYQ_#\@.N)JH@&L4%Q,0Y*&<5!"XML!Q1>L?JN/#O'?;M]JJ1 M9]CV@K(!]#(VRGY=S*ODJ@Q?D>"?AW4@ 2T^?ZQ\9.3%9 MZ4_.+F"#$X"!I M;RAZ\]SRM!.^MKQDY&&W72&KE2XZ<.UJ[U7<:/&6029'X;RF@Y;/FR5^FIY] M6M7EWVO>3SL&C]R[+!1D6;,F2K3@A/ 4B15+&(3K>>X[@+ M72/GA#X!B!ZIRWZ.>^ZSMG6XW,0YH33Z "PI!*6\ A^3!VN-5-[PC,WK>O8D M<>2,TR< WG8:[B#0NL_>Y7'$IN6\*,+GZLL808+CDD'P0D#MM\M3B D1.XB*!LB M!!83:(E%DB"4#*UO>PZC=.24V2> X>;Z[AG<=V:M3[QQDAMN %&1?\ZUAFA0 M@4/RD)CSCA;NR7S:"Z)V@^R?YY:HK1:[] +N3W"?Z=@/G'_]R:3!=]HS/S>G&Y:*S@7&,M!N86H*HC";7V^L" M18E /R:9FM9='7$_O$OJ8;39I<0O?1?WB*YY&"D-I(2&&"W%\N$]U#M$[0;-/\]%5%LM=@G+C1-]);^+\15U0J\U4:04+(04 M>)TOA^"=+" ]2T(JXC?KP?'Y&'6[ ?7/RF7_%)JB%;J:N#C9W5O85W;@G[;3)&=S3!5+:YN)\18KFVQWH(NEA:N91Q\JC=B M(C+:0EB2H?6U_ %D=EGZ.!@H!U9CCP:1>":_8_VM%LZMB=$Z(>9S_<@$C77" M<0DPGLQ8ME%:%Z9S=U%2))@*XT*# M$[3>E(RN-J\M8 0S*>HHDSA1!/, =>.6")T8D ,IK=\(YJ)OTH."%$D6%\D# MCZK4NP$=B4,5(*!UW!1$V3S]8W\JNYEL<9((II6ZQJX;NG1(+C> VJJM]I1_ M7<[[;&W^_"D0SQ>?>+9W =5X8__(K+M.4/ED/NPK3,; 2 M0+)-75X@]DTA R!UELEKD^_VY7BDYF@@ KL,A9J!:M&9ACMR2U\MEF_Q\]DR M?226R5CW>3'.\,*:@W(:B+'P),]Q4H9 #WMJNE(YATL'&<9S%""1XR7T"$VSMS><#; 676+6UI'B$D6=VD@Q1W (@;&DG M\GY33\"SEE;JVE MESIH3X.+.H T6N4L>&"Y]:7_;0JZ&3S0" OW>Q4?+.\. M(J@%H@\_D*IB@V_?' MWD)0)U@Z0-./@>9HL7> H3L\O%A\"M/YA%'P4S0KP&*].A9,>L8KEUN>T](L:%3 /%/C[.ZP I=P"39SEOVF2'V9LPS3_/+\I\+IBA M+5I(6B[@DB!K7(0!7[@"K6,667'I6.ON0EL)&O<.N3U\VDF_ RB]Q37) _/+ ML)Q/YQ]6%URPJ(*S,@"7AM<6UP8<<0:H8I$Z!2-CZWOAARD9]SZX/7@:R+L# MU#Q+Z>S3V:S&LYN"PRHA"F5QOII^P?-BR O&=-8YH9' T4G:UX.O=60"C#=6 M)]K79?/RIYV)&_<"; ##-(A6.H#;E=?X"RV=G^G+U<2&K%B)!H*M/?AMI,TZ M^[QI8B%=X4DWW^3N4]%)V5S#^.LP 7< D?L74??/-]XN9K-7B^7O89DGF1?) MN+"@1:SUK;K0-ITL2&^CQL(]CZW/N?7!92RJR"\ -&;_M/_1X*38.J?\?YW_OHHIO+O/MBFH@4 M$&/VP&0H]5HI49A*HK+:"$4\<-N\0<=]*L;=^4X)IR,UT ^2KA+MJUM(/N&% MMJZR[7_Z=C\7OTKOYB+Z>7Z>]C')7F')Q8-)M6]#=2!CG:M>>);%1,^\:FW8 MFC(P;EAY4OR.IO<.]N6-6,]9>'&VI'C[G(W_$69G>&.HYNJJM&1B2,Z160G, M\CI,1%!D9+FIDB^^F,*\&V0$ZCY$CANWGMSX#J:_7@!Z76QRB\OS!3BQ(H<< MD*3FF*C]F\GMQL@@^8@4K@<,O/V-]?>H&CA?NHTMC&V66 3X80( M185Z_T8>LPH.'*TO$!91&,]5;-X_YKM$C9NGV OP]M=//[B[U43OD;N4S<** M=YV6MT@"7DW7^ Z77Z8)SV51^_!]F&^>$K4=X6.#AR$Z\+ L/HX"9I1X)F1B-?D?A<6(&J9(1;G M?)&1)=G:%[A%P+CSX$Z)P\/EWH^EO=68E'8+"L]B[:V(DG:+$#DX83-8S'43 M8=RG 1H17A,P[L2V4V+G<+EW8' >NSG\;4YRFTW_@?D_2&;DB=P8AHBIMA&K MM:A+LL#S#S==%1+&Z_(^?)V(8"6J2")TDB*S0EZRB^0E&^$8"B=CQM;%OD/Q M,O)HMU-BN0LX=+PL*LOD8\S":C4MTW0.@BL?IC;:>_;Z^<^DB?.)H=>RN1)$ M2(J40#+0CM7&S+G0WL(%%).D%1R5M:UO(@=C9N2Q<3TLC-,"HA]G8YL\B%N< M?I@_/R/RYNG;^V4@GWW3;/+9/&^^F]V1TY4P9#31L,R RSJ]3"*'*&, @T)G MU-:9YC>HPW R\M"Z7I;&B:#0P8[QZ#TT19O)"PW2. W*USR=+ *$8%BQ(G-V MMS?9N#D!?XA;L!;*:%HIV30E()S0X\"(5D,$8P[-(BK>OW3LH M)6"X\7 CYP3LHX(_0,GMFXU./N*:/)S9;;X:U]_>?M,IBW&W\'C2REST3",F M#:PH"2HY5J<(ANH/:N$\0XGMKV%.4)E[PR9?G;91D+A1Q*8959CF"2:T:+,! M8W*LG7<21,XD")$DK30A,[8N1-B%KDZ2,YOA9LM^V48W'3ADK8\R-K&:"#+F M9$ DVD"4" %BIDU%%B&=4+5@L76;EP'8Z"2/?3 TCZWY9N!ONMF_._OT*2R_ MT=9' =GFK&*^OIA@6SFE/3+5-H@';.X[/KG!9GX(#XTV[_NON<(JCZ3\K$VM MWY&U<:#^PY MP![=?T@#T_,=RAI9F=?+#V$^_<>&NNO(Y?RX[,T-RE^7BUZM87:UG]YH#6M# MEL(%R$D0U*(E3RWG.JZBB*A%2@5;ST1N0OCQ-^"_WU@>M[159QYM.A2NKN:V M;SXS)5((4C<6D0E%:.D5(/.>%JMWX 2Y'X4SE1*JH)MW>VU!][AV[_2XO7\+ M?V+=]VE 7X7IIQ"1P+&;QE1I%KCXJU/F;91L^QIN^A9]_ M?,E1!^!<8F@2J[, M.O(]M- FU70FTSH98RM!XQJK9KBX:X/:*:%/X_) F\HPSS?'*QYR-/S=A[8X M!=Z/\D8&Z*)SYYT77T$M%J&RBQR*M34W-2F(J!U@Y"+8$H5)K4L[MU/4HA?M M_:=?+X;KM1 B#[79"0A?+W92:1H;F\OG?KI5Y/=K=."V9E&!,O:H,,8/C MP0(:R6TJ);2?2+Z%G.,;?]Q[]#5LO3.:$*C ZMK(5"A;QS5Y<#8+)] *IUJ' M;MOH&;L)0QM,W._MT4@#?1J.7VHVP4$VX^)?-C 7#]'0R%*QJ3 M08::%L&X@27K[#;I#91$_ D1C6"MIY)OIVAE MNUS]VP;&X&$Z&IF#RX<_J\'0.LP_3.,,GY%F;_J%5WB1/D:D/\ H[4%Y:VHG M% DZ>Q6X"E[KUEW8]B+P6&-R^;*'=C;B41M4Q*P2!&A3-/BZ;_J,I3#MO-2M M?8LMY(QK1H9#S5TKTTHC?9J8N\([+%*Y\XPFXNBG0F&R)Y#B;;$G9T:@Z@,F"XCH:9U/*KO5RW(6NHT=( MWWK'@U$^RIR59;3?ZJ1H1\\,7*9M/<1H;"AHT+<^N/X^5>/:H>:(N3<\NJU: M^K0^-0]YNKF0"?/\?+&YI\?YH7F)6Y[6I+!@-UI;W25=O6Z3SW#S?0]L=#E( MGIV3%,HK0IKB!4+FB6)\P:V)H3 W1"?:G0EL44SPW9?=.(U Q8((##S?S.9C M=>!'LI"SM9HQQXT=HJQ@=PI'OG,:#%L/%1H,I+<^+=H+7$Z_T#-J#CK)[^S@ M:_*'']3 CNU 82,3]N";" ;_@?G#K:'S#X!.%:50UCY.J4Z[5\F!HS> =R5R M+0@-S0^JCR#WZ#90^[_Z1A"29/!&X,5P$5?'^6%.D(K0/-9) :&U7WH,O>.: MOE-A\E[#J5-IN$^S^!:_X/P,;[1K.\0F/O"4!@;Q>[0ULH87KZDM0NH^6!'U M]^GZX_.SU7KQ"9?7F3AC605/D4+(*7&:-K:^P=B3M^&%4 M6U]SC7?)BY5627"^#@I4*4#PW-!",TGH8EGAK0ML=J5M7.LU!(;NC[ :0$M] M6J5-/>*]YNDOO]8O\1 #M?V!+0KB=J>XE1-WM1^]+K?[<6XF43U?K-:KZXZ= M%QWF;UPYUX:<-C% A[1G1L6!\)<@U"Y@Q5O&4NLKQ.,H;C*(X7:-ZSS?:\%_ MLX@K<-K+0P!O7::U2@LJL!B N5ADB4@R:C[J:D\:1W;93H? !ZMS]G:=N6X7X+_ZV*-#P4=UMCL@M7@7*V =\5 #+2,3&%%&N\X\=S:+NU* M7 \CBP_"Q/=;#;501Y^6Y;PIP_OP]= 4[>M_WB3GX1%JFJ5H7SS_@8,$Q@LB MD@9=8'4^IRS@8X[D/IZCKV'+.//1!0>ESF931M=\ M'4*Q*]3V,H?N1@L?=FMZ3KKCJ)NQPRC70$)/YK^\/6L,DD96%(Z M9FSNF3Q"R[$&Y>YS;V!9$)!M4*#1:-H$7>WJQ^6F[7HD'DT,K;N0/$K,R#Y( M"QS+,2LH200Y&@ZRAD);FC'5@Q"$)Z7HJURH;O063G MMXUL0EH#X=*<#"/M/LW*6ZRW>6F]:1_WG(SFA\-?T^1RZWOT-;O>NO$B M0M/%Z=SUQ>;U@9PH5F8D#]37IBLV(411!.TJ44HG$T?;.OK9F;CCK[B^\Z(' MKW>Y+L)Q3GMT31-4,M7.YQ988,Y$Z^EWK4M-#J%S[*NO(?!U__)K8/WU:<7> MG<45_M<9/>CEET,3ENX]HTG_QVUTM6K3?.\\]QJ\)2H5 \N0F:]C%Z2"6#U[8[)D0?E01//Y MLX\1,W+;Y18XN'? VT3PO5J-7;JS#M]I]O0=9\?J/&M0<.L# J-]A8+O6E"@ M*18O.2;)@Y+,8./%.ESGV2T=_#:O^G;^YXT5XVP.@0?0T1;:V(V@0(%Y,"HR M+YFPPKKQ>,5U:=I>[!IX?L09X?9L6V/&ZK%XD/4GJ+1 M(D^YB* U!.,8J#H[P!67 #4K.A>3DVD=S0S9:/%=^HCYK,YRNWK+>3TH10>_ M3$.U[::$KNT_Q]MWWBX:9PUT>?H@GD@";R>VW]HN+! MT [)4N"@5,T3BR: I%""HR_2MR]0&Z05Y.:LMV;E+>;U<:_+ T)_=E_H-XZ M=D/:7-"% Q9V.W _0@B^NX N0=4;IW GTHK'RY!O%WN'72Q%CLAIBE"3D5'O+I'KK@4)H%4NB M_PVV+Q]&\[A3?08 [2C*[ J\UP.+SJ<4/;X^>78VD&<#3BD/BJ.#J 1]ZT)D MQ#KSMOG0N/W)W FB@PT@/0E$AU%9!ZA\>\'6];1"#6K(-@ MF:#P7TG#/":E6J-Q#_)V0N%@@TL'1.%0*NH ?3<8>7XQ:QWS3]\N"]+.PNQO MH5[2K;^]"&N\PZM3EA?K)$0;R7F1AF3JM ,I@T7K;2C-DU>.H73YV;*NOON@%C$[#BF: @J9!.\U(5L4+;RS+#3O:K@K;6-G MQK?!RN..6D/-]&EN+CHR'VQI;OW[9DW-![0O=YI;=RW.4XC?1J=N\([)H1Z\$D#]$WOQAB)$D4R MY,.:I#6H4A+X9.M9HPQ&><\HODZY*(=$.J_Y M 29"Y+5[D4U%)H])8.OFG MQ7)],4[YHIG3'=[1"(:RCDHVA;S6Y#5X5+4.*Y<]E MRODISANXMOQW6MQ?!=)WEH%.5G 9$\A-3ZT0!02K'21.$K!9LBA:1U;[TO@$ M9A'L@Z;'-^L!5-:GY7JP7^_AMFO;XX;JZ3V@_3JFBS+M6EYS@Q!"J%,KZDUT M+3 OJFBM2FU?T?K(+58_AZ6^?+N\ZYK:X.015/@ MSQ.G-:D*(Z'4*:VV#H\W)EP?E M^O/\'6EV4Q6R";?"/$W#[,UBM6EV?97Q?J.S;[8F!1=IKX@%E%86(AH)3&06 MZ6=1#'A-V82%<>.-4Z.[!QQTL Q>ET+A5;V8>?#X@ 6BV_( JMD:P^C6*,K MIE&@%LF7YJ?4VRD:-SUR+) VU%('F/O.DKM,S7MDZ>&R+):?Z)L; HA**F&8 M ,1"OG/Q$F)T"HPR4:$R.9YU:<>!?*29+JGS].T[,EAKL[A.$F9!ZQGL_6PP5$B"FJFLJL5.1>T/H=3BK[ MDCMVUZ3V2-LR,&1077:UV[^OPN&F7QPX] MFVS(RZCCYD.1Q0HY10L.I07R.@4XG30D[67"H MOWI)GY EE5\[+]22KFU1L M]/CZ\R8'XN*LY.[]+D9G@DR2O)240-G(:5GG>K<) MZ1M7)YL%OHU;(514T@D0OM3>?$@K6/D -5U-^Z!#"BA% M=P7KEQ32+;XA7IP-/NRRU3.:M/GJ=;FXL_K'1C[3Q;E2;G:C="GDD,A7<[1G M8<@02U'@N?$IZY 9#M?:K#$SX[9*Z6(QC F/@]?)%US&Q8D'!!Y1:+#E<4,- M"QSP?.3147%6AY"<%&!8D$#&D0 9:KY-(8^ =G^75.M#SJ%&!EZOCSO2_?7L M4\3EA?M_UYU'I5#S[""R4$Q#:Z:C!??#SN$$; M2F%]'O$^-(_KF(R81Y\VT.RP0;-B=IWPI'Q6V3$+.FS"9W1 M-#]^/-D$L>N%<>N5] UM^/C3M_?TG.I^K-8WJOT-KS7]M;F?%J!2G?[)2@$> M9G#_Q M=A.FLW+N/R>4/-RWB0 MWE,,S,@2/5JOP=2C1!5CA%@G8;(0$^IB60JM\]*'')BQ[P0%^@ %^,O[ Q4F MRB:68Y3 E*NYN+5-2A(*LJVMR9D1*%IGB30CON-!&?O@[:Y]&T>Y'9S/7#'^ MT[>K+_]C2A[K,GW\]@M^P=FSK]/5I&C-N#(>?"$+KF2L0]W(+XYHHPW*H_>M M&Z_L1EDG>#PM;!X#;SL=]H3,FYO9??Y>+#Z%Z7RBF%->:0^8D@9EM(9HD@(A M5=2>@KFL6E_J[$5@)SAMB)#'0-A<73UA\>?YY[/U:B,Q_C>L$?V$"7)FG4R@ MA:M#X1*'(.H8.FN%]L))&*B:96X=4AP(66 MB#,D+$0C3$+#4_-FY5O(&3?-85QP':*1GL#UT[<;8GNUW R&3M\V/H61Q4BE M"_D4M1+*H0//.0,>O!?&&V;28,'NXV1U8LEZ"1N::*\G0#[$T,7:S5EE-$I" MY"A!92W BR(@>Y]\B-H%T[KCX YD=>*WM8+"#L'!,7KI%&JKJQ5[8<\#,R%D MDA2/FIR%' TYH<&!Y")GRX6UBWDK0N-@;#R>+H936 0)_>_=^N=F.OMWC)(M2)P]R(KW.MF#2 MD(--TO(J<\X-+X&UOF-[G)IQ ^1NL-=(71T ;^,8_132?^+]-21E5!8=@F6) M).2D@I!LAE245M)+FWEKY&TA9UQ/LAOHM5)8!]A[M_B"2YQ^F+_ N+['#&/, M1NT-F%1/U)4G(6GT((W-,H6@O6Q]#+V5H'$KD[K!7SNE=8# OYW-29"?PZSZ M$)<\\.(T)VHA999!H4_@,%H2%FTF?8Z@./?%G/\]K>P_$];9^GE8+K^1U#8,3L2FV(HXD:$*RR@+ M09D,K!@;F+5,V-;G/]\A:5PH-@; W?V^H38Z ->S+V$ZJ]O%J\7R79CAM<=\ MVW^>\$V6I5& TOHZD3U#\!J!2Q>TE"[2_M+:Y.U(V[B'/L/";1#]=( [8J<& M:<_)_-?[T\NNA1MA/B#+B?<&:059$(H74"$%\%$AF* M0ZN*M*VGK^U)XKCG M/\.B<$AM=0#&&Z[*5@G*4C)'5P>N:/)*=K.<[9379PGR\[#Z6/][^5]GTR_DMLS7JU"G_=;&49N3M]H>ASQI M^FI1OOOA(VJ7AR&D0='S"234J%JZOIAL]IWW7ZT.K4S@DI9#3+0PE$YDL#$F M<#$&QS&ZPEMW.]A.4;N6#P^_Y_QT#8T37(0,M/K)WY;9@?<\ LLA,2%0E3+< MA(@MA(UK41MBY?%>#JW4TL/>_DBFE!>!F"@6DD': 80A065A(/N<"O?!RN8M M1(Y)D!P,3P,H?2F3K20AI@I$8R/.43)#+K_D_QX M ISLE?RXC](Z0.#6E*8@F4.? :7AM/74TD?D=(Q-OGT;VXS'(:Z2N M#H#W8%Z3HN"-H5(0-XE2&#/%;PE!UBEC.9+ FK< .SCU[&FD.AX#MJ-5-"+, MZDG=Y-F'>B9ZD_K@&$5O40%Y *7.L9/@!+'@%#>HO4[Q;F'@_2._AQ_]!TI7 M/ 0S#>3=@5&ZE=Q[Z4P6I#BJ]NO,%/(KFSQ1KSA(RWTN:(WGS1OJWR=C)WB9 M/RR\6BFH!XQ='3D]GGMQ?5VI$8.JJ<,J>%I FL06-5=@"@]>,)<]&VZNM^M/6]O9S[ M-E?KW9.*?67< 2Z^EX,8K=")"P-%.005G28++CT$'EC,5A;.6F?@M\@(/8$9 M&AI-+373 = >NR9Q M6A/65DN'0V^Q#K.3)B:?9]:L)TZBL847X,J2"2\^0"R*08E(OF?T/IO6D^3V M)''<4XO3P7%(S34<>34\-']=S-,%C\5&#-X$6FW.>DYP.8\=J8%1#MSDL?"#G\-W'Q7)=N:HYW@\P6$SBVJ&& M)&MZ%V.;(9\4TALOO8[&ZW2GF_TCI[?[OWLG7-FGBZM3J*29UW?:5.)?R!CR_MHRL)J0GS5![%DSS5HT]I/?: M;#@K*@./*=>6U@)BB+1D4\S,D:-J1>MZLZ>?WKL/5@Y+[]U'+1WX83^%69V. M_>XCXOJ7BQ' FV3 Y 7'4BR@K9,S1?#@&<7F)+BL=4RE?3?GQVCIY:"WF=H7 M ^B@4RQ=WMA1^"PL!<^TG],F'RVGKYB!9&U)A:/B\A1HZB'[MHVV=X#0 :+O M $2OUQ]Q>7'P=FQ*%$XHLAT(R*K+9 *F6Y%46Y.D<(3]%*UC@X?HZ4_ M !VBZ\4 @N\ 0 ];Z>O81OGHM?(&8@[V/+TR*%EKP)F.6@GI<^NKI^^0U,O5 MTU#[6TN-= "PG^?T+ J WF)"8F;3R,JA82HD8#)S4);^"%S5) 'CG!8666I] M>'J?BAX=[P.5O&@J\0XP<_O8]NX1S+/9;/%[M>GT_7,B;DIV?;6:6).%5B5" MSI(,KPJ!? &*6&J6$F:/FC5WF@ZA:J9Y/@" MS_^>.)&PZ"KE+(ASKLG[* 7);^""USQ-@:T/8MI1/^Y5?&\H;J#A[K']%L-L M^@_,?ZV>LXZ9"XJR0 ?A2*R(Y-_@9O!#)NG6L7&MLR1WIV[<>_GQL'FPAIX, M]C8[A@N:XBF1P.J:7N -@Y!J__O"!(IHI&Y^DKL[=>->N8^/O;TU]$3;W;P[ M^_0I++\MKN\'R[D@3M3E9I_WG^)FZV!YG.;2BX#GLJ=-N"3N@:!I(4:*?UP, MI@2=:"-NO5_U<.GEM-$\D',=I*7U'DJ"*&GE"]0E9^Y***U3S9_^I=<^6#GL MTFL?M72P-S_6 ".JK$KF&B)+Y-Y6:7E?++A4T#/I(SK3&%U/N*?-7DK?L:?- M/AKH $A-J]I4R"9YDX"%5 >@9P/.UL-[G94KNIA26N<'__%[VNP%J"%[VNRC MW0Z0O;T]2DHD0:4T)[D0N3*006^^Y1R6$CIPPVE[]X30?40_=O^MA_(1,1JRG!32>U54O?,IM,8D M&52MM"J",V'N0.>Q&JXGE-FYE](6#24X-@)^7M,#I:"1W ZJJZ^49:P%6? M4V]$*H:T7BNIM1 04@Y@#*(/04:M6Q>L/$Y-3S Z7N]W _ V2N@!3GN5Z6<6 M5.'>@7!1D,P8B0NE N>\SS8XJ\)PV1"M6CN>H)_04+OB<-KJ (IW6;J3+O>) MEES-CWN^6*TW Q(G11IA?*!P5=0$3583WUGV%4-!BV"EB$//W_T>C;VD532' MRW?Z!S7578>MU^[PE]+9I[,9[3+YK\O%:O7;?'DCD?BGFLB'[\/7"3CC]'1O$ 6N[?[#[*=,U3OF8ZV,(2 MS_6&/Y#865&TOR4$9EPD]TI"M)Q2$YS4!X51.L+&,S:)<.S;3XA>%?:>O%L3XW3)KIJV#GNM#42 M#RQ&K!^YFI"\HI4Y4OU$*]I.45LQB!Q/4W=!?K+CW&@0=E,&6=/H39:0@GTE>RE]Q[J+?330 M 9":IGZAR"D*"@MIKT503CJ(P@GZMKHT4@G>/+'ICU]WL1>@AJR[V$>['2![ M>PI_UCP3Q1PBYS5Q@VF@C<0#]US;Z(/U^'_J+DZ D[WJ+O916@<(W)),G;B2 M*&IO9I8*!7DV051& $9A95"*F]"Z0NW(W/>G475Q#/8:J:L#X&VK'[$JYH N M@):;"7W9@K,HP(88>0R<7.G>AE@_C;*+8Z#72F$=8&]["K],3M0J>;!2\//6 M,SX;"2)&ITN4G+/F]^Q_DKJ+8_#73FD=(/#!45GDQ:5LFQ_CM.6@E[/'YE#;J^_: MH'K_PZ'^1J; IE&=(LM28D#@AC8U)94!SQF#S%6*7&K4KG7.\: ,]6+@G]:: M. 85Q^:)=+!(+L7P>EGGC9&/9E0@O0C2C'6,G+XD(6C# 7QCE:%X%J?6[7E MX"FE18VW#([2^Y/?&NYR?]<(9%2<9^TH,@DU#](+<"$'*-HK-,5$+D[;X?A( MAIY2"E8_:^(85#R!K>%A(4RL%P*91S"Y%GD@.8H^2@4YL*C1LIS+:6.#A^E\ M4N.-!X-T QUV4*)P"(_W%J?,W$F?P#!.,F:*@4],@XA.!><#.M\Z+Z8!V4]J M@/*)47R,AH_.X!YU!NXFY_-F0__Z^_/,S[I!8979HMR6Z>#YL@?2<[(K+(:C4L:9"8'6X5ZRHG";R:#R% X9^IIY<7N,9F"N2RM3Y&LAJ@=OI2B M,(-["-DJYRVWF9UV3M/>LT/&RI#=!S5'C [91T'=QX&W!E-XX9*/IH#(M;E< M-N2^6Q^J%$FLVAG7/"&L\>B0$P\&.R'T]E90!]"[I/UZ(]IL/>?[SL25R# H M6UUP69,Z:C,%[R"+)#BK9^W8^G1Y*T$]SNQJ K!V:GBBTVA>EH)I/?V"?POK MNLR^O2 /=C7:<)HCR#F%K]A*6J=Q%:W495.!'>HD$B4,ARA2 %Z$ED7DI%3K MPY@>2JB\"")86XMU:ZB760:G*=1+4A0=N)*B>2[/TR^AV@IEO/WGS")51[*7W'$JI]-- !D-IV MSV9:18$2'*^=:DN=LL)*!HG11.D,M\W/U__X)51[ 6K0T35[:+<#9&^OQK'6 MF2"=@UA8J941!KPF^;+"?*(?<2-:5Q+\64JH]L+)7B54^RBM P1NJXW4U0'PME7D%.>ED@R!YR+( MYR%^ L\2BE..A9PUY\V[G?TI2JB.@5XKA76 O>W5.+FDY'TA9FJ'3961++A/ M"20WP1=)SHUOW:7[SU)"=0S^VBFM P0^6)^#7O'BG 8>I045DR8GPADH05@O M3!%,MO;W_N E5,?@[6@5=0"S_3),BO0.16 0E" K+J*$$*4!+8H37F6I2^L< MGC]<"=4QQS7#::L#*&YOSW=Q&T#?_7VZ_CB=OY[C_\*PO.JR-BG9>4-L@<)2 MB[0M \=BH3\X&LS"VM :F\=1W,O98G,H[=5VL:E>QY[OLRNKSPJ]\(+3BPZH MOR_J-ZMKOA,C;T4$#I:\8U 2+3CTG!QH3))EZ[2[,YOSD:% #8GJQ;X.!=E1 ME?BDP'O)Z@7C!$"\PWKQ(ED7.?S_[+UIFULWC@;ZBS#-??E8\9+VO4GLQW:Z M[WS2P]76M$KR:''B^?47E%2;2JK2PJ-#5=(SG;;+SB&6ER $D".##>OPQWL M613%Z6:449>\ZP"_S])U2=5'YX%P755>%HIOF5TQ_W:RF&[PSHAP!",$D!H] M-9&\0!U0 MX)CUK)E%C3 8R?)>R2*H;.A..ZRKPH(-_RNF9]^'US#SO%(P]X M])2;MM)!IC1N,Q:(8T%*FY3>[/5; \?/TG5)54+G@7%=55X6BF]X'23)N&>R MM+)1 83@I3XJX+Y5E"1+*+6!=X#6F_4OJ>KG3*@\2C7-9Q7N-?VG/GBB=00= MJ 9A20*KC *118Q&2MQRM9/Z50ZJE8^6?71<'F].D;DGE88MN4K M%9[H/D=;I9>U-\O\>#V2/E.1C;8@K4(%<^/!.H*@(CHY3FC0 MU:=9/4%.C7&MRT]_='^@74W3H1O-?DOS]_DC:FCZ'1'MM<]Z>2LJ*>(XI0A. M\PPYRR0D\A]U[:Z,SU/5_YS-&OC8-K>UHC8:..-N.?KW9/J?=^,/TTE(LPV6 ME*&JQ#? -2^>HY"K^0V>.)]=U%%6KVG<@ZQ^$XJ=(ZR2/EJ"V-OA>#A#A^#G MR21NL$1USDDH =I&MFR.#]YZY"N2H!3)7OK.;-ANLOI-^'4.L4KZ: EBR,5 MD1ALS@&T$DB[1S<227?@EAL9(_O5KJKMHH4L2#51"()R "9>!]Z1OME!4F4I^J MMQ!]2,&I]J T DQI^YA!G]WAY@;*974.ZDMZ[X! MD[YLLG#38EW8X'(D4&HW093>Z-8( CJG:&EIET[WLJ+/ 687 ?T IJ)B)[6E MW.>-QF0QGD]_##[]/. \$AXD+9O$@Q!9@F5< 9.6,"I9QA\]@8M9"O_U9?+] M'^LOKJ"Q_LT=,N[6ZQ$&=90V.4F"?=]B?9HLYE_]9#I9?/GZJYO-7/BZF*7Y M_'9N L-("T,M($D8$$HA5UHY8(P)&FW4:C-=N>.ZZIF%^DF7= "#VD)M('S] M,)U\2]/YCP\C-YY?C6-Y^/NMR.RG'^49^M)R$BHB MDYFQVDFX/&$-2([GMU!NV=[+@^(80]# (HEA/ZP\N4Z_1UBW6*DGX :.L.VG_2_W>ABK M8#P3P/+R90?^PP=2ZO'*F%GNT=.L/=WB&9+ZO3_JRCNJJ8<&8/4>]Q_J9/QE MR=&KR6P^H#)&@UL+0HH"1,93WDDB=5)=X< M9CZX'\NZX('$&!-M9P8>A0?!D1_CC$-#;3(1P3C-:]^;;*>DQ;"L"^P<)?D& M\','?)(5T<9S\%XA\#5#67"700:E@F N^>J3)0^S,&<^GNJ@Y#CY-@",A_#^ M9>C\<#2<_QA0##&)9QR"TL@&\;9DRDI-JT))D$RMJMW?>@T@3)6%6R MG+J\4?(0HG2!$>UH>O;AWC$+[P4H?<>??DFE0*4\Z?OHYNE#F@;D>A DT82A8^$5 M];@9%0-DRH&D.3%/K&&B=B']H33N!\P7D%NOK*[6X;C:!XD4G\3M75YCRX53W.V\5\,4V_(GO7 MB^O[]USO_6CX9;G$[/?EV?! 0J=T@ZBS<+6BMZH2Z*9&S@O+(RLCJCDI%;*E MIYTV"'1J7&0J:<5KAXU=U,@=YX88W$PALC)^##<:HPI*=1@X03U3CFH9W(5Y MDMT9R*-14]-O/$!A#1S4^P9OO^'6_OQ'&GU/OY99X'C<&*=RXA&HX,L&4Q&< MQ-A.RV@D]5$95_N:]%A:^WZB<5Y8GJJL"P)EV7"?_Y@,#'>!:,T@J21!R"!1 MILF#9I)RR8E0OG8;@@-)[/O]Q]DA>(QJ+@UYI9/I($N;C? .K(JE_@D=<"N< M!6I1N$)'#-7J.R<'$MGW0Y)^T'>P>BX,?Z4%Z4#&E(P4$0A?NALQ@D&\H+NA M1,K.4L?Z-'V%QK[?I/2"OH.5.LHR,AY4FC> M.>W+![RAL>]'+_V [U#E7!#XEGUN;YF,#F,KF@0H%10ZMBA6*S.!J"@S@:E M_$2%//&35%7*^-ZL<36.[Y#$\9=A>>=; M'JO,MG37$X(QEXV#R&PI0=$9C$(/2[.L&5-4!E6[DN,@ D^U/S>+?9R,1F\G MTS_<- ZH,-0)$B$+&4&4AX;&:HJ4^F"YR8ZEVD\*MI#1;X:W.Y1L&IU3-=# M(7;#PL!YRX11!A0MSVY22<&0P$"28$V@UDM6>^3>S=IMP.5H)>X Q4$2/1H) M>. -)_'3W$WG5?& DBC3=U\MD))Q^+&%RCS^:#9*!X)B$[IT5GB'F>NGZS^5UAJK)66K(_*1K)@_/ 8W'^++7@2V,% MQP535FGJ3:_VI[.T>V?VYQ")GFA_WHQC=\,U-H[P4R9L;/]4E3$;>U#9BQ<< MN7,T*XQW/$,H"?1O+&<>9+:$L^01:+5S'V?U@N\FVI3NZ7,,^KZG1\NNIS4[ MOFS(CZ+0RR(O!X;(Y?39S+1)C%?O0[X_=6TX0?4QM7OL=55]-7"4/<'/3S]^ M=?\SF;X:N=ELV:&,4I-9B!$"+09>B(1*].LZR)D M1 MG4%E?TB>K+>^*TKQ&)E/AWY1=+:L-$,?Z7L:3;ZE^#F%K^/):/+EQ^H/7BUF M\\EUFMZ4-\[P5/J85G'.[.OPV^S]_&N:;DH(_Q+&0S%=N^E_;AJJL>R$2NCX M"IZ7?8DI.&<]6&JDE#1[J_<;/=D']U[X%)W2 MX$P9H\"#!B^E!Y:$>G*T]Y>=I MBOJ]K.X3=X>JH]KKS4[ M:JHO[^!WOSY+8UG=[=LTJ> ?DFYM0\887D5P"HG M()49$:5=I6!GO"-ZEMY^R\?Z!&9=539^9C_F9)4TDPG,+Y, M;)&Y]%I2#A+RHY2C5%2?+7$:QK]3+!6RJV;2(F9,DA62G+RP0"%B-J"#1%8K@6 M(=9^47T+@D\!ZJUHL#[\.> Q1#4TN-@1@,[E.;#3AK*1!&-(D^A,!K MET><0&Z_#2(N!,;'*[AM+)?\-\E)QQ@S4$5=J>ZC8%S(D(T6B3LCM*[= +G" M=41G#21:1.2A:FJSR<2.@K;!1IKZI,*[ >VP]&Z3TMOBNW\<)Y!_N^G4C><_ M[C4\7JUTC$!V?ZR"0/:DM%(UXH?I)"["?+WH,-VK%[OK[&*2T8Y1"9IQ5Y)H M%"PZR!"U"]%%9IVK_8QD'[I.-=:_3KZGTECFW?@38C"Z:7RXZH^K$*8+]Z"T MES T*T()L"X7TR!1%$H'(,+0''E4VM7N!'D$F?W>@U3'U*;Y[EIQ#3@2VQD: M4!.$\SD6)TB4QM/H#I6.@S%+BH>2EXG43C=LIZ1?A'4.@$EU;333(F0[+W>; M]=ULMDAQD(54-.H(FB_3SU0@E](#]YQ)884Q69X%:9N4]7L/U@;R3M)6$[>W MV_FZG3_O';.EA1,PYBF&?4:"Y5X!UU(J3JAAIG:@]#1%_5Y=M8&ZH[1SZE/! M+D]3'J(661+0NO0MMX =)!J8%QW@J?1.W7@2>3 MZ^OAO(@315G*:X;C+VD-$WK^HQ4"SP,IKQ2 WJU:RHL>+ONX=4DVF0=& M'"C)%'IM';P5SKZ4U7UV5J MW.K/T3P.%'59NY3*317N&EJFT*A,H+2.\LD+F73MY@\'$]EOL- =PAX9MDZU MU^:(M==H4+_C-[ZG=V,4X6(IY]^*:2\_.\'F[??A"G;O" XJV;ZM*R-&_YGB M%\3,5< _&LZWXS0D&4)R"C3%B'/5'HYR"\R92(2RELO:.;D3R#V]@\+!2Z]K M!CG1R:I@P$>%HG:G>//YH8ONUD^="X^/^">?0;0,YO35# MK]-L^&6\4FMI.131O66:& A!(!=,H"OM+?Y6)VVM]X';V@C=3LG%P>\8&$RJ MZZ1)9*W;^A CE2_CX% \ D43'/BL,TCJ>#;!>)5(Y]AJH0=8#3T_"YTCA-X M>'Z;H"NSXB'%=?<%ZTKF$.7BG9,EGQC*NTT#42CJ+65!A]K77%O(: TRQ^AW M4E?8#>!EFZ'^.)S]9[FA6/8T)NY!*>U $.)1-OC;;#SWT7N=1.W$[5/T]'M9 MT,^15DT_36'MIE/-9_PWU_LP*H';A&4(B1(07+K22D& 5,D3W):>I>Y"H,?T MM.<^':?UG7 Z404-P&G=@/_-G^&K&W])ZV3VV@P'QFS2"8TO,>5!F<88AGD& M3*%OD /^M/J6 RH3A[%:N5EV(7"(UE#J68Q2U[XPW$7+ MY<4B=0!813=-8>QF6M/[\3W>TGS@),V&)3Q:7&FBK:P$'P0'](IXIEH'&FK7 MX3]+U.6=VK515T-;%W3W^GXQGY47'"C>M7-]V^1UZ0_5OI+==[VN;FJ/XK>! M"]P4+<\6#5]TLE2VX:^L1 P&J\K$9*]8]:?<35S@KISR2*-/A@<(E&.D)U0N MMC\ 2L!;RX4EKG:PO4'"Q?F#1R%GMUD\7 \-G,$[KG&$+RWA2OOR)#R:YW,7J(I)O$RTT**Q/#G:) *;(@F'#@1!E_ M$G /66.BVAQ@\->Z&#U(S_M>C!XB] ; L^VN+@0F54+"&4TH%X\AL4VI3**7 M0JM 6/U3^W(N1@_2[QX7HX<(NT>\S*;SP4T29;EY> Y:21- >U%:'TE1ABEY M8$'1X*(PP>S5^A4_? \@^+L[<&RNV4IRX?B#YR0I]CDW9TWSX&HT6M-?W+;5 MCI#$AQ"%A)ACF6+A.7CO=;EXLRERQA]-,'N A%D*__5E\OT?-VNLT'#SNSLT M/$5#/[;B-&U.*HNV!7C\/Q_^>Q 3\:J,V,C46$F8Y]D\]=3O M8#C@FCU-\JJFN4TH'"K&%E3_YO>/ R4E#8GB8<@%!FU9!S"EN$!X[7APG!KR M5,![L.IQS9Z&9G6F^D/%V(+J/_W\>B X32YX!S$Z/ TUMV"TTFCZ:,EP&N_X M4V^B#E8]KMG3%*K.5'^H&%M0_:O?_GL@DG1HC'B9_5= &C@XA8<@T29*QZ/E M[JEPX6#5XYK]U))VI_I#Q=B"ZG_]_WX;D$B$X 'C9D<@"Y<%5S$K\U3-Q.%G M_=5^;E[U]HT=GO4'BK$)U?_S[4!E[W12"H(L9=R:*?!)1##<>6.%EX0^-?+N M<-7_*L8'[@;NLYR^W3U88\3%E0T%*SD X2L&RTMLN,64RI8&[ MVL,/MY#1RJ.?TZ\A3Y5Q4S!9=CC=> 07)4U,%M=6IK"N0)3) @\Q"JH%%:R[ M-V-;"&KE!OM(=>^$SZFROZ 78#<3E2=YZQ\/2YNG^;+CTZ3,7'9HP]WHPV0V M++2\=RR MT2B?DN+/()*/X EA$#P/(FCTS&3M!A07]3[O(#WO^S[O$*$W )ZMO31T9"GF M!$$P9$$X!8YB[!"IR]*00'BH751[.>_S#M+O/HU+#A!V WBY9[]OC?I=F)F5 M-B0* SIF7I)/!JQB'%3BU/)2Y"YKNW1/$M3SO-\V3[UZ*FP*CZO1-X,8DB$. M):.C\>6-7 13NG9DK1S#O2MUJMUS?Y.&5F*!D]7[="+H,%DWA95?ALX/1\N( M:!!U3-EJ#.>)=4=XY' MCX6@MWOU?=ZPS@/)B,B)Y\G']-\,1V_2U<0]^=3X;,%#2[U&ND#=89JH-CZVLQ/YQO/],)9%-)[3:F9V]%NLJS7,XIPWD?'*6,D1B@4;/\$ V!)SQ%DC 7XK$DT^UI[8U MD?/9HJ+;BZ*/:;1$Q.SK\-M//]Z-4>WI]K7=MNNFAXW.5Y=+A-H0 Y% C'<@ M@L!@+I4KSFPHR4Z+I,XQ?Z ;[BXW_W0(WO?JP=P_>AJX%-KQ-B0[8077$BP5 MJ73[CX!!)P5"$C5.,$5-][VM^G^XU2IN]GO(=8@2FX3B^LT)92P;SC4$6V8% M1'363&#(#%<^494U$]U/-VOX(==!>M[W(=%@E%53+:@2$TH*>/ MP9_WZ/A[YK/!8\-S5_L@OYR'7 ?I=X^'7(<(NP&\/&G9[V[^+0TJ$F<@T5+> MX] ^VY ):,H#2981%<]RL?J(L@9O9]H[%SM0$2 I.LC%)E M8!47D+3@5E&6\+CH#+6G-)'OQY$[$@D'=XL_1"UM/OKYF+ZG\0+_>OF#9;W: M^B<8K[DO7Z:K'*C_\7.:?)FZ;U]_G) F.GJM"EFB.GQ62A*MEWZ+H+YY'?OO MX?SKJ\5LC@9U>AL@2UJF$P4%^ D!0F2/\)(&3^#$HB7:I5C[QI)UL\>ZD MCJIXG]?+K@X($:B41&F0L31QR^C]>J<)>,NT\%8[(ZJ_>'V"GG[M7!=8>63H M:FFCYWZ[MZ[(S2X>!C=:S3JTU!J;"%"-QE_XR*&T"H+(A7)"2ZKWJQQZIOGN M3@)Z/BNKZ7=26]A](R9]V61A'4UIYREUD4$6L30;HA$,M1A2.2MY-(2@XUH# M,;L(Z*]#;R7%3FI+N6>H7*&U1%DRKR[!D);Q;3R;>TIEL&QKTV#(@5HA0N932?/(-4 M@KADJ:.T!@[NK]E/IJ ;%!PMRSZ[?)4^,=/2A'3 6%!$* (F2PF"<0TNX@D: MDF+.8T HR5X]OE9?7+?X6OWF7H>OV_7Z>4M97_-'2K!/G6,T.[B:#=V;/\-H M4>:*O?HZ'+LU3CZ/C)%?IYRMB! MXJN)L86TW7:W^B[Y%*E7R20&5I#RB%SZDI%WP UAR)<--%=_VO4,33UGF6L' M(IVHH@%H/1/UW^Z>\K@<_S]^=G\.9,HL2.\AT-*]C$<%EI@RTCKXK*E25-;N M,G@$F4U&PD?B9')>I5UV!OG#=!(783YSX_@I3;\/0SKER6&%5<^85=Z7]S/G MEP,GCEMM0"MF$.PA@'4\EDH])H-C/%5O6':F_/)-Q[[W^NWM:*E2\09%/QVYT0\'LIUMM7=UI:WUS*7/(H\Y1K'EX/UUSL,K?%;%EPR%E7OQKR=&U M1C=+)*49#9'17&,$W;:U^X5< W"85-1-&]BZ+Y!U2*BDU-2BSRXY+VW:@P3' M- 5M'$N:2HHN33V /2:@O_SHZ3I]#) 3!=QWMN13&<#NIG&+\[..]UDB5MIH M@:O"#2'H;-LL 0/]Y(14+&;UG".XWU*] ^-474XZ$VS?,+GZ]FTT7+T<^_0M MA6$>AAOC^VDR6BR?FZW9(H%&+5F C*X!"(.^@0DZ@8TR)JU1H)O-1W>EV?9> ML[]<>P? Z4C4#>1+#CW6[P7\VFEF+0$F,@516@:CDQF146LET]*16+LWY-'$ M]IN\:\>).J_6&X#W,9DE&U2,@4M0 DV%X,R"2SF#,\1)2Q13LC:P+RX=>"8 M5<@3'J+-2\D37L4X7(W>N"?]JCG!)U?H)/^W/T_G?DL:G!?,*?025!F/G!,Z M#<9 -2K-C=<)BKT6CR1^F%C!O_ M%5([G)_85^'XQ3JQ;4=Q>F8SQQ,SV?L$22>,6W+"(S)F!BEI2S0-3.G:W7[. M9.9N9?YV,GT]6?AY7HRNPO(ES0R5E(;?BS_]<3(:H5+^<-,XH$P01;T&XX0% MH3@%HY@#%()B1FDK]WN:=H L#B;R,@SB(:C:-(C=ZJV!X&0_!@<\9A45\Y"# M8""\DV!,TGBH>#:JR(OQL@.DO26 MDL1!\[2\.4A@DO.0K&+2$6^MJ'VD5W0H.^ODVJ))/4A7)SJ4;\;Q?,F?UVOZ MUG^R;G=7MTG",VMTDNHYA*\S9W@RRR;X@,;,+H<<.@..2 799#1C.6FJ:C<< M/U.&Y]?)]V7=[;M-\9?-^G:]6664C)=[_]+5%@3!J,Q0HX#2[(6FI<-)[8[^ M^]!U&7F<0["S:>FJ:Z>!DW:#DX&1 KT#PL!QB2=!C!0L'@*@F>#:A.1"JC]B MYP$)_>*HOHX?M10Z7N#-)%HV#X?UE>=LP+-0VC&/GD.0( Q)@*<^ ZVT\5D: M*3N8EKF=EGX3+.?&T7$J:,\ /71$_B]%.O R2Q>R 29L I&81,]11Y!9*Y:5 M=,GO]:3X>$P])JK?G,FYP76B4OI/C.SD*R_&\8/[L6P=1P(Y1BE:!IKH^PWS!BOKG,RK!?YL''[ M"^T=E@.J%-$9911%0N>1."0_9@4D<,^CY2:IC@U6OS-CSNZM'R+P=K-8G^:3 M\)^?W*P\T+K^EL:SY??>_%E^F7YST^FRO>D)*:S#%JB0OSJ!HUIC7VZG6[S/ M]VE8-DPN9,WFLT]?$=6^4'ESR-WF)51F)&1?+D %07]*2H2K5Q"-QT PV)1D M]++0:\;WWPC@79G>79Y]3_3V7S7Y<>A^E+E0Q:ED@%)1F M&#Y9I\#3TO2#9,)3TI+ZO1XE/U,F>[M@*\779U7VY%3)MP"7FWI.1Q+W1 #- MRB#9R+VS+$-D,BE1ZDW87JU]]@%,WP6S1RIK4]U'2*YGA?\Z' ^O%](EQB:4I')5D3!*"1ZX(B:FG+/W>UUS/:/R!XOVK/1C5#:I(;^^%>_^O$=X M%)[+,@:-I1S+3 &/J.=HZ2)3P23*\2IQBX M. K4>8I[.]DRU]9#*!4-0N:43?T7:D\0U/.AWAH*ZRFO 21^2--EFX%Q2$LA MWO3O"9YH*[* K-$!%EPC&QZ](/2DT9660J,C5!F#.TCI][%$<^BKH; 6<+>6 MR-*9H39J&S2&:URC,\,Y RNS@YR-LRB.[&5M__#^^CTCK(F@Y6A]-(2E]>[R M(9KH)4?H$PG"E;ZO!IE)-KE,6/E/[1?.+<4)QVMR!R2.$&O?[VE^3N,T=:-[ M?F)AYB:SQSP)*7A0NI2K,!/!>)2)XD0;+10/FQW;=KR=>6J5-C!PC.HF7S+B0OL<=_N0='JSC%9Z"6B'4^!(+-<@C2.FV@2D_N])JB9G7V6ZG[?-K?ALY]9]Y>,]M\697.O MU36[6LR_3J:E%&$@G* Z4@W6QP1")8_R-QPRMRIKYH2WM8<>56>B\2QQ9136 MV@15(/&"]L1W-QP5D_1V,OT9_]WR0$\*'T+I5Z;+S('2Q5$I"XJ((-%7LV:S M?4Q0TX"R$O8*'>]>1_9C!@(R4PQ#'[+HQ&-HC#&,O!$) Q, M6/2D]KN+#MEI/.7>^':I!)-+WC'+?_PKS>;#\9>2M;9 O]/0<<%[HG3@5"WPF<-W]^&ZZR!ROJ\3!\F L= M,&NC1Y9 T6!+OH"#3SQ!N8W#+>V3V P@=N1JGEVJW]++GA#8@18NV;"N6)XM M_:_9N[4X_IV&7[[.4[SZGJ;N2UK^X6LW3V_=)Q'C=>[2NQ,[/8;R7II9KG,\"I;PN^\L'V$,YLEW3>_)FF83@K MH<^[\7PZ',^&82V'&#D596Z]R09$< *<# R2\9SFJ!3?\R:Q0R+WVACZA6V, MIC3?Q XXP3H4]RW%N]WO#"629 *I/#(2.G@P6>-O3<)@1A,9-WL2/X7Z>H3M MA73S8I'>DX8OV9MZ\[^+X?S'N_%L/ETL[VK>S[^FZ>>O;GSDP>AD],)*@0>C M4>OY-,1DB"Z'P+GGP323,JW-_%[;S[ZP[=><%@Z"X(O>NRNC=B.X@=><.B,- MV/)V1$3J2]9! )/*"\)EDNIRMN9#WO:[_R-_;[WS(>A%[ZR')FF9>Z&YR"5Y M#\))E$MIY&%%-(R6UPTT7LS.>LC;?COK[ZOU,R*H[VCJYI;GY^ED\6U6ND0/ MQS=U:1\FWQ:CI9 &.9+,C3.0,BU]5"D%M!]E](>.7C&5=.![!4G[K;O!^@2Z>] M$0Y4F? K# G@'3.@79(VL/*R=K]!*PO=>$NST=>+]'GR,7T?HIAWR&4VT$Y0JPT!H]%31KXM6&XH,$&<]2H1+?3LA]J7]JU:P]J[!NT-R/ACN?6)SP_K.#@=!G=GJP#0UA&YFW05J +E)YM M#%R'E/U ^R*O1,^KQ@:28+<=8]+T^W#=,>&1[/%$69TS2S'//D_F;G3_STLG MV]\F\_].\[L9%@/CO#8N:*#6TC+"HF0O$H<0MG M;6&D;PN_30K^&2D\_*/YC_O,KU)[>3*]-Q5P8))FG.-IY[5T(*) @7B"0;$, MTE")8?!=CNIIA_L,U.ZW*U[:C6:;8&C@*"F32D,Y$KDO8@?8:P.1>1]=G]^=/:9SR<+Z: M;_F8ZS*_F5$C(-*,0;.2%O>DL1!=$"00GV/U2K\ZE.^'Z9=Z/]>#]EOT4AZQ MO'GN+"=1O'+?ANBSE9]>79?QT@.-\75,PF'4G1,(K06@S /@IL^1&DVTV_/6 MI!Y1^P'Z1=[C]:7::I ^WY"E3XOK:S?],;E?!E-A=/C):W8]BNE@OMN8SF2B MEB8@!KU,$41&7'K* Z1 +2?6"$FJ3T7N=SK3B>^1WR_FL[D;Q^'XR_U1;$'D M8E02.)?*TT8EP0AKP$W[R33%CB@,G;1D/HH$09%-D9<%1FB$EPYAQ+!!= M>[[ X51>: ^:#F'>K:(/A[)=07F>FJ.KBAM9 M0J;%>Q5$@T_2@":R%$=EWU!3LWV9NM#6-.V>"'5A]")VUF-GTC@ON>*\S)HH M5R76EC96 DC244JT.SXVTSGSI)BCO4>7[>Z9]?WOE7MN(M1!"#-*9 M:("8*%:2L)(94%PY9Z744K46GS]BHM^XXX*35J?!H840HTI[B=5)FLK.(RXP'IO2FO_5/15!DSH91,O96EK"=Y]>>LWG+G@W=,)>%[ IKIW MTFXTA;B)_SY,AR$5QR"O'0.G&-?44R YHAI9X*4&#<6DF-%!R MWV#H@C=:QX#ZZVRY0?3",R\#GN?HZ J9RX0:M$F!"1L3$3:8UE+,>[+V8NYH M.D%X/QOR(+A=SJW.SKDI^_1%>B@@9WB,P3+0S&54(OK<+A,/Q"HE@@DLRK-W MGJ['WHNY#VIB3_8$NTLX'9\3S0WW^TF'TJ128,@E(: ^M$P' ,3S(3VM/2 M&"+6KFCIE>$7<)ZU"^B\@+-MQSW/OC8H2TI##!2%)F;QG/ M/8TJM?8&[$F&^AV6<\&;JAY,6MDS_GEA^(/]YH_IV@W'^/-7D_%2- LW^IRF MUVR@J0T^A !9!A01)P&,"@(HY3(P0;D.M=M)]<#F9=\?5@3YMNW7,.)>P*;< M[7;O$A$=.)99,J5*CI<'K+2\70U) H:Y.@4A*-6=1&_G9?.R+Q#;W91=(^X% M;,J#??'=DM.94.&S!&-4:5V='#BB),3HA2#,,1U]8WNU'O>7?=?8[A;N"9]] M=UGJ1*'T5J.29>1XC@J(Z0J F9\>RBV3A6.QH@^32=_[Z[03L7/I95DJ:+6L'"6 M\^1Y6ON)M5K=*2T"Y 4<.L][K;L$16((SM($3I3N_G%9-9P=$)8$Y=X%:U5C MA]+1S/83,[6Z%7M7QT'8N\">G1N!XM5LMKA>B>QW_!>&X_7$#130[2SGV8-& MEZNGYREVU>"S.H%==P/M5J)MM [-SFMFB((0M,>MC&&)<+4S MT!?:.O16Q_=P\'$X^\_;:2J6)B$"YV6$S2!'IJ@W'((QOKRKX>"<[;CJ!"Z7[#MN$\C-&?YZ^'T8T1HN!<)-3"GG!#:B MSH1/ 4QB&AS70G@EH[+-C/O>EZF+[FW2S/XY&2XO=?_\:U*&4(^&\Q]+D1A+ M10XZ@PC&E<%_!*4A&23-HR?1:'32+V$'/63KHCN<-+>'3H!,*[OHF'NWIT2R MND>+P5$6O0"T*27W*3T8'3UP;:C/FD2I.GERV DW%]VLY.0]TS] +C"/\"E\ M37$Q2I/\$5W4Z; POOP7?A\/Y[/.IG_LM6KG\S\.Y[V-,-X+F7V@$0*"$ 3C M$BSE&73420A*E'6U"_)Z#N/7FGJ?CZ_L_EQ2^@.O!7?94@@RH>AR\N 3R1!* M(TL\^!R/U1OVUB+^HL/R0S#[R+SWHOX&')\5Y?B7K_X"5$2"<=N!2F>@M [,.?3D6SUXJ=P0?_8+[!%A5:WU22<<- MX'R;._?QT^^_IF5GSY0S(<3A2:0X!AJVL.5E B0D&$,-X[EV;Q=(Y M7B9=*:\!)!Z=S/GE=@)FBL0)9R-090/&Q8Z!C9$!X2X*84*@MIDNQK=4]UP$ MTH2K<&;=7S+:W_SO8CC_\6Z,.W^QU,K[^=]/)L@IA3(% M%D)F$@3) ;SF 2CS5$6II73-)+Z/XK#QDZ$R?FMMG^[!]-?8:C=3_BCU09D M/)49]H99<(82L$)Q2:U-WC?3K^U0YBYT@YT!X>??C$? [7+:#Q\MGHUI@BYX M20U!=]IJAI&AT:5U%P6M== JQNSRY6S&%S&(\B7MQ1/ ]J*/Q-4KY+N1GB(9 MFC"PC8PF$)%(L(D+2$1[&JQ2*373#_% WBZT\OL]T1 5 MM>2H-:8E 1%L JN)!9DB8UPD8LCE[,-'[%UHW^"7M!5/@]RI@SH_7\"FW/3> MJ<@N)LE >FK*2'A5TK,9N,K<&T&+^WXQ6_*88+&]9L$O:4.> K=+;Q6\OW V M*IF67OUKM"BWC]WN*UKEB"8M,8B14!!\V0Q:"LC2,T>]2>B 7-Z./40$%QIX M7DR6M3,XOFAW=W_Q#9*@D2>M(5!2K"!EX+D.H#P:0S2/2>EF2F@J\OWBD[?= M;9P&C<7;0CNS39[7FI2D90,+3=V$(!#)<1*!4\),&\%V>?AMM*1N"2 M,_0O8.]WA.*JV?T^RJ_1'!)RO*/L8B;11G\UUR#8)!=Z4 M]AI,IE6#4"9"])Q0243MDKB74I^=B8E.D Q.2 LBT(Q"U+CQ&<;[T:L4>/5^ M''_79Q^(V>[JLP]1?P/.WL.R39&<(]1G*%XI""(E.&DR<)H9\SI91FI?I;[( M^NR#0/!D??8A&FD 3IW48E+KO-+1 24<97C/;C7HPZZ1U*)P)J(8.(:!#0% A($C5&E:/4_EV-W>L[P8/P MVV\U]B%@^FMLM?6+9PS&!9>4@63.%1-(P,N [%$\#V MHH_$C0)92K,3P630JL2U JV3H4R4YM'1EP'77%].R=E?N!J[S4UX MC^"O6? MCRMD7?3,&)M .92+D%Z3@8;T+6704;GV,5LR;]R47:;&_(4N/U=E+WUZ5Y60A*% MSKU*"7U]J20X+QE0P;T5EED>F[EE^+LH^Q*3K9W!\46'G@<\7O51833@-,A0 MY@\'CT&",A8($]$'&6R*M;N,M\#WB\_A=K=Q&C0"!Z'X+Y?_W>,%N\.0A 4! M7*E2R1HL>!TSH%!9HL%1)R^GN<7[0@<6L1J)4\Y4P9*JC*V M@B8PPG*P4AK%%#J$\7*R8G\79;\X0] EGE^T(3BHE#6PHF#"@<94;M.M <,- M@9B2#2%)=+34Q5B!OXNR7Y8)Z S)+WK_'Q!+.6FL0OXQ@E("A H4O*1'2I_2]/MP7?O@'RE@M#1 ^*LR M2+JL-/P_E/^2A6759?>UVW7I/%^)=X?RK50)?E>\L(W6QYOQEM;WVVE=%3($ MIJ)1QH,U699GE0&LLZ4J)WG+%#?25K^1[8*14\_E=V-$3/J$^%K:KU_62RZ+ M[*2*62O%(898"I(Y ZAQ,T$1#R,K5/BZ?(*>5VMJ^4+AY%M727 /.X0Y6 MUF5SR<9L;<:SVBI6FBLG<"1[8%(HH4N3\53['N=)@OH%8C6U[P>G(W30 *#* M%GN??YY,XNSS9.Y&ZV))&WBDVENPVN-VTZ+TXT'/B2%O/O/@DZG=IGD[)4U" MZ!A53ZK+O0'T?$1U( %?K\;Q=?J>1I-O14QKUVG-$D_",:4R\*@CLL0E6&L2 M:"FU-!B3XT\J0VD/LOJ]\>D.5[4UTB/(2H0Q^)1&^/,O/ZW$AOTB9 & M-LB:LQ2W,[X^-P9&4Z]@F>S MF51]35;#9_UTZ,?T;8%>#G+Y83KY,G77I^8M=WZP5H)Q/XHK90)72?3;?GE> M!2L%59"2=&5 6L)3FVA02J.ZB=16U*[]?4C!R5'JR,UF[_/G:7*SQ?3'4J#K M-BNX203U'F1@Y0&_UN!MTJ!3X($1D76J?4V]DYB>C='Q.G\4G%81=P/'V](6 M/MIYRPP0(<284I_BRQP?$=6R:;<#9BG^G^>2A4Z>.VZEIE_D5%+WMAO TV7? M+(K6 9!0BG4$3:4/#!*N I,TU(D!AYG05'+:1<:^E\+R@=H8"^LQF/ M>/BUY&I0P60=7TNFG5+6 *<* YCD(EB)IILHI[W-E+A GO-G]EJI19P<@M2Z:BDM21LQF2'0H6UD"H],U2.D6X# M1]3*^=MVD-]%EY0JGY,5H*4P>)AC=&FS)!"YH==[D-4ONKIQ?6IK MHP& ;8]AKQ;SKY-IR6=<74\6XSD=L&2#R\%#EF7*-2\7JQXW*.%&4ZUCIIL' MV.GNT'ZDM1"=583$IHO4@7X:@-T#2:W:^5X%%"52,N!2$2]3!*G+50?+#'PN MCWMI8(9Q8R2IG91\@IQ^[5C7\*JEA[Z]J@=\7,4X+ IRHPV.),\T>HV[0@B) ML4HVX#@SD'1"AJQ108B]7*N]ENOW.K$KY'0D[M9LTO*A\0TG)9W_:T*3&P?! M$.&+:='+NBL:]]EX51H48G0- M0A$&Y:4)<&>$4DXZ+_9+>QU)P%[@4Y<&OK.IY%)AAPXJS2Y32*EXKMD2L(D% MB%9KR4QR9O/RL ?8=1PSG'1A>#;IM_D48?44[[/[,YU2-[7E*Q4>'3Q'6Z67 M!K?+W(WTNT64=4SFY FXK-"$<%$>V6L#5G)E$]$YJ&ZJ8K:24Z?T C_]:C*> M(\#3./Q8OS_+V46,4D"+R$$DAGS:C+^5G&3%A36T]O.*G<2T\%[^=#1L+[DX M5?8->/.WC*P]/K2_Y7(TF1QT6@X.+G/#&1[LGE,!C!F1**'6R-JIK.V4- *? MT]2\"SS'R[Q)Y-R\^$Y>A(C4ZXB;2Y3[3".-@5"\M&AQ5['.K,\&+8V@YP0] M/PN=(X3> 'C>3J9I^&7\JD24TQ_K*TZB4@RZ/)LF&$T($='_*E-T0Q2$,X*^ M/ZM=F+.-CM9 B[M<#1).TM*,PX>\0@G!'_E4VDN M$I/!2-!5'T"TFYI&\-.QGW.4[)M%T7J/&=P$*3(#1BA=FE5SW&,ZELNC8(0Q M/%2?W?@4/:T=7\?I?"\H':& !L#T,7U/XT5Z-;F^'LYFJ!?\\KMI&KEQ7-M8 M;0+7W A0NI:H%F%UC/X?E2?75$8#Z%K6X=XO ME2UE7BBXY:]>?1V.W8W[E[VS/CJ0MJ17J4G@72 0M=19>8TBK'\9MQ]MC1R& MM;'6B6KZO.I8.8:#__?#()(@/3J;N"M*%9].!)SD$C"DY5%R%:1]ZBGG+(7_ M^C+Y_H_U%U=86O_F#D9WZ[50\%X1($<*L@%KL\UQO+LC]%EZ%6B"K&V)%;0% M'\LL#QD2I8QRX\Z1A_[EH*>]W<.F&R?[9 TT *6[OJ0-K?^H:<99.A\3F._)N M]-,L\DIY_#@,1\.5[N9O,5*9NE$YR!?XO1\/_O(@.2F5)0*,MJ5$8]F>-$3P M1A);W$5+:_>HJD!V(\[6F;#:G4;[?G.R#[_E%G2:YN4/U_T7?DKCE(?SU=NN M@>(NT2)O31T!P2)Z'U0B^X&00"PZG\SM]?ZD C'M'=:GX;(7)5V(9=W5(B2D MV0S_A8?\1_26DH@>%"$,7>1H (.EC!KP.M,H/,G5>QY5YJ'?5\_]VMS.=-T MUN_8?LCR,O ?QU_P Z-[[Z &+LJDF*# _$@LDIXTG !DO%LF> IF]K%:0>2 MV.\KZ.Z0VJ6FV@4B_F#U]G'9R'[ F/5"&PXTA8P"3 DL-QZ(RYR9J U)M1W6 MO0CK]_7SV4%W@E;:A=JKKV6PPKOQZS55)5TVFZ7YK)3!W/8A^\.-0QH0*UF6 M3(!UBH,@O@Q$\FCE4W099:I,HN?!X0%4[P52_6) VI4^VT7PI)D& /=XRVSN MJIO=MG:#.9,N1EIN$9(OR32*(5\.0#Q56>)_J:O]Q.!0&O>"H+T\"':JJ[YS M1K\,G<=--?_Q=C+]'5F;SMVPN",?)K/A*HVKF$5Y$071Q]+#F7*P@ALP,5@J MO=?@I??#TP5= MPIQ! WWCZU9H]QA;LOO[&-5U[X=+#^ -"G8^Q."<$^6\I@$/?>0368SH>6)P M'FW)UFOJK)-[@>RX]?=#V@5=H9Q+%VT646Z,\5OU!GGE1F$Q6GYYDK?^C1,* M+D]:[6,=M/2B6#V(4V7B]W6[07'H]6>8DPI,PB7)5A&-1#C279> M9%+]W?8N6DX-!#:$^MNB//]ZGU?"?;^8S^9N'''AG]QL& 91BJR<)" )=>5I M$8J $ TTB!QB(BF2VK4.!Q'8A6]EX/1XN; MMOWW>;P+N =*2,HMBWB4H'T7$;DU27#DV_/(M954U.[<>"2I/72V'-?M3/:QRI* M.AZ#97[=6;W#W]QT-96JMA/XZ,-=^7I/<]"U2V==3,%F RD%!B)X!UX9!9Y( MGY0SRJG:E;]=N71W$Z6>G3@^VS5R?/4J.&D3+,9NN!N) C3>'KR4"A2/F?!4 M_N$J"Z4:\8VZ@H?@[%'U1B^*;> @OL+0/A:#CM;A4PJ+Z3+0?_-G&"W0)+Q% MZ1"EM$2R ,%*#*X4/P4M!?EP27#8,!(![G< M4G$OJ,C59S+L(J9%+!ZK\UU3/D]20 -(^IC0M1J&$NP55M9,&,65\S$@$Q+W MFBK%/UPGR(%I$0RG.>3**-I*2+_9GTX1=+K@&T /&NX\F5Z75Q6K,/1F+I)! ML>1,P">F020>P$6M(.FHHHB:/WIU<#)^=I#2;\ZF4P35$'X#&'K6V=WEZ][= MD29'M:?*@J34(L>QC()C#A21R7GT?QFI#;?3J6YE<':?P<:9==\ VD_TD-=O MU)PH0Z22AY#Q'!42?"&$F8\4R;;LP0>!Q+>P)# ,Z*M;F1]A.K;?)_Q MRV0V*^^!OZ?ICZ*DM\/I*7GWISY7(=N^-[6UJK?']USI@R?I$J#]*B,R.B9^"UYL B4Y1)0[.M_7KB*7IZSI#71LFF ML:JFB@;.W!V\++-*H;SG)N@B$U8N3TE&@^XE@1RE"$E025/MFZLGR.D75/5T MOA^8#E9 NUA:AW.!:NLLR1"]+S.I'0/6_R)$%-XNEPM>\' MIR-TT "@BC^Q#MP%\8)%DR#&4@65J,%(RF;049M(?,+5:Y=1WJW>)%2.4>EF MZ^SCY-L ,G;(Y"X8R9H;11-& 3X($*84&N?$(4O+I62*,5$["GR.IGZ3&N<^ MP(Y310/0*D'-,N!T7D_^&&,\\N[ZFQM.2P+E M?5Y5^RYKS0=H;Y-4R%VDHHC0H@EV>/;;*)(+T2E*-GK_["I'/)&2)@W5:2@[ MOX8:L&1O9O/AM9N787"SQ;3175JV:JIH0%(;6.!6N0^R B:6[H:7FD(\D$Y^IX,N1!/]D<^ MKG7$<0#JK.U8IP Z5>A]GXQ;Z/]I,4/1S&;+NM[I8OE(9&!)$"9HBOI6&(/$ M:,$YHR!Q@6=]"CXYMM"_?;_ZNZ#6((C_/Y[?&-I_;RI"YG?*G4 M580Z8SB$G$L]4(Q@DT7^,N<^6L\E$<="Z8EU^VWN=59$U9)^F_=PRQ=(BS!? M3M=]]=5-OYQ4!/W4YRKX_IE'Q;ZY*>\S5H]3;H@0IH M0)FZAL>4*GVS(@.2K)#$F,Q\[3?P>Q-7KQIFQY*O<(O,5@D6*7WDHC3."27! MXI@"Y[,"+)2UUM->"4/]S^R,:2J5F:?E\- MITK,YD!18MF5U^%$!S ^>D@R1FVY$U37;BK\#$FM%)-4AL*V9ZR5]-( S#[C MW]L0V?H.0FF.' 0,8K7%()8Q"A9#5Y24+IV>% ND=@NWG<0T9,M.5?FD"_DW M *3WX_1Y>)T^I^EM@Z=58^R;5[I9"HHAB07<8\B/= 8<-1KPOUJHY'.L_F;U M.9KZA54EU4\ZU$,3/3]*EZCB*=QCZ6;2G99:<4$F!4)I*^1(! MQY,'1[Q3F1NTYJ(RAG;1TLH#^6X=J"J::.# V\;'>L_)S$A./$'.U)0K)0V6 M)@/@876_6)M00? , >F"K/Z"HEIM+ MIJ2H502XTA&$$!:\3QJ\TX0&Y94DM6_OMA+2[P5P+RF!HW30(I#6F\P%R0(- M#KSD%CT])<#)$$!S&H-1V0M5>^+/#E(:2@([*[$-7OV]+&DA7'Z>AUE"W9N;C M9#1Z.YF6XM5!C(HG%1+H4 JTDZ5@K+=@5(PI&"(QV.@2<(]):LAP5<' 4R [ M42&-XFL@&#?.

4EG>] FP(DB0CB62C.3!=FK%UG0TA*13%;T'B Z2^M'( M^9:FPTG\-'?3>9TF,:M*^AE*Y0%3@\@$FG$6(#B,6D64%!RC#-![H"8H$I*M M7;^RBY9^K.0?WVF6S&*P/!*7$ M47)"H9M@.$6#GG@(3%KO:.T+V[V)ZS<1<&ZS=;I^VL;?@$NJ; ETN.$H,)L= MN&1%Z=]%!3>>IM3I"[!##L/.7/BS'X:'2/W$P_#-.';U"O/3PL]6[UC?E(>F MI[S W/6I"J\O]Z*RTLO+S;5NG\9%#.],9@F4S1X$B0%]\FS 14^D88FJZE,K M=M%R\KO*A]]=!;:*$",IX\!\UB!RHN ) AI_)Y.73-E8>P+"-CIZ?KA60_N/ M'D:>*NX&PK!-'O!?6W52X%PR9\N\!\?1#&H!+N _N,K*4XX6T51O?K>=E*: M@=6I>49^T,!*D=,B)30Z,E!K*XT]NG*11UFZ%?A?Q?#U;# M=3M(Z?F!6>WSJH; &\5-^>4TW6TM*6VB% (OD21+!@P)&$G&1 33A&==.PYX MEJB>7P754/T><#I>#WW?S/\Z*;TO_GPUF7Z;3.\_W2T3S4Q@I5]_*1"VNC0R MMOA;XU/T,2O%]YL]O&N%]I!Q@A8GM47:@,'9,,1W=X!:J$RM\!!ER5"ZQ,"; M7)@1RA@3$J$=Q^._''0[W]W+L8Y#J^-$W@!T7DVNKR?CY0"'U\/OPYC&\;9? M\^L41O@_<<"I5:Q404GN<3LPC!\L-QRBB3IPK[SSM3WE?>AJRG$^$@&/"C0J MJZ,!B&TQX&]R3F$YZ]'-T_M\[T\HVEYK-,L.M J^W*J@(4\4SWYN%',R.:5J M9X,.H[ II[L.[#I440, O+E _CQ9.PXW[*;9S]/)#$5'G3).\Y74!*$2K#9X M$(CLB>,<_[3V^Z+G:&KJN*P#LJIJ: !6!VX:KDR61D2(UL92MR?!ZYBA[!=B M0D"?\F^[5OG6I$,5-0# 9S>4C#)R:AQN*%]NE;T&DU,"QC3EDD2A?>TTPT79 MM3H@JZJ&_ALM+;\]2^&_ODR^_R.%N/K\:ES2\+K4(0]G8329+:8;35VW7?$_ MP-/]CZZ@%.(=@K:O<.#-_]'$U[KY/WH4U8K&AF=ZX7>1'6Z-1E?-MQT#$RB?6"6,7 M.VL[>4XD/"/F?C" MGNP8N5Z:;/O\HC'GB^[OUB!Q%_'WX;EHY_Q'/D)__ _ M5,E[/ZN(&47M)I$?'^0%]:?YU$BOK:^.;O014QVEKNS0:T=4'7'8^ MO1['MR/WI8JF'GZQEYCD*#UME40C6BH[_M5X%J?UU+3QR5ZE>?*FC%/>T;'I6X.V9.KQ.\>UD6GS#?[G1R=OMJ>_VTBO[ M(-7M(946-M[LU6@R2Y\GM^26.^B*N^^9[^^C1]W_%MQ/2LWJLR,U[J4]TZCV M&E':NW$L-^H+-UJ^G#Q%41N?ZCUKFD^<$T/=6&HWNZ'H^P;/')MKVP=XT MM$/FD_T$T, =TUTZZ>E-CO7J??2_@SIIV?%74#<%C2=O4-EP_#I2@^ M#K]\G<\^77W\U DLGE^OW^OS,\)C;]'W[ //RH.ZM&T[_Y4:+"JK9\LV]=-3 A=IN MAX+V_9G?17@MX\[$-D-K&Q@C0HR+3CG9E,:N/-/[W MI;2R8TD429'/G5?4EUP"#,D9\9%\;TCO__Q>-I_2U7.V7<9A8<\"[20=ML;F M1@Y7@]Y-WB2^SV3.&Z*3&/,LG0XTY=6BMC^%N5]L!FT-/@:O[]ZI@8 IVZ(> MF@G/,FL!80FR*?J<3E83+> @6SOK5.ROSS[U&A"<;=;AP?0R\BZ=2/A?UP'. MLCMQ%>52 ;A4 "9I,Y?97$@*4;I(N(J9B6MI&3BC=464[[_@5L=7L@5F P+ M:KX[ Q>:T"%ONRW;005GF[I0,">CKUIZ*L#Z'#J41>F^2 H:D\XH*,S5&+CW M'J4'K-Y#^7V9QXM\5>0W19GLVH==Z.S>3@W +(^^JDZA#:SPHBI5C%?K>+8E M#*7CJ# /I*^65H+X+(!S6?XECBNUH/(CNS0 LT02+)96VL *WRI0F8G#2"D* MHB.0,&NDKXIF:GCI=EV)E;QYJVO]0HTSV\@\;K;6H<%V2CNP8C>1PBXD,I3] M,9$_?_)BL?E#[L25K+(RW]]'?Y]#>V-CN,(YY1?@PB?#ST"-^$<5I MKZ*WSR(3FZ0,-DMX-8@KU5-^#JZ\\OHD5!A+HZSM\-WNI7X]10V@^ MS:]%G#> Z*.8QBR?$QCE%L\ BS,0$!S">.[U-!TD/D?W89U$9)7KLG/$J"H@ M1:'.A5]%\PK5L1I($I0G-.,D,JO4UW0.N;J EJ_G<@!UD4G6_WB2CZ(5-2O7[??4'#I0H^(6TC\]#+R@CZG MJ*ZLCYOZQ6:3Q KW-J.9:W9T7 CTT]*9+W3,%"+_DLOJY:XH*D)%3;@P=ZYO M'+5SA(ZHS_4C,.MC1ZE4-.'"?+F^T=7.$7PNRI4LHY2B#MS'@MEMO>>T45&LND@?4 M462[)JW0*^3C>J,4*.E4G=B4SC#J:?< M?E2BCXV],/-8-(M(\XKHLTP5RU]+JI/DM*9P7E7OW)T/E>STGXOR+HOECBB' M[M0 SK)*IO4X;>P4'B29SZ6TH2$GQ5GECCQH!"NO"3_UR-OD%XWHKFTXZ@%MV$Y*UE0 M_\)2%]M)1"X)+",]\-U.;^<=.OVT@$YR<4I F6A!7W6N-U3UB(@$T^$YZ<4I M860@A4.*G^1YS%,@)X$X97ET-, W(3+8*GG <-*#4PZF-W@>-N]@.:;Z53]Q M2I,PM*G*[(O:N+0=NQ9%G"=-&8;(IVJ'=Q*14P+$G3+XNK1.ZGY%Z:\?/KV^ MCXZJ_&Q#=U*64R[$F3"N#VK<946B:%WE4?.8ZLE/'79['OBZAJ$9DJ+G3ID4G^V4@ YVS/'8M^%9; M#PJFC9%MK2J,[KG-TE032VAN@(X#,]#*$;8&%S:-H>P4X,?*=0]XKB,=(N$NPF[]0]G&;X7"19 M)67P]KH#!;N2ZRE*AP#TPZ%5*CY^>/KM8[VK6[6^@1"'1&,@N$JWV4E;2P\ M@83=JO4/A4-">$5"(L'&46$7:H/B(#O9#@<&NE\NU2/B[M#Z1,,1/EAH=5WE M3<<(1#I"X6[%^JC39X"%+ \BKO*D3$0QVVYGKU&2!AMX#;BX>Z\^@AFY^6]4 M&9\QJ+KYUR6;5=ITLCNK3#)*@?J;.#O_!&]_4?]YRDJQ.^_ M_ -02P$"% ,4 " #8,U]7].#Y4=H' "3+ &P @ $ M 83$P,3(P,C,M,3!Q>&5X:&EB:70S,3$N:'1M4$L! A0#% @ V#-? M5][6 VOI!P MBP !L ( !$P@ &$Q,#$R,#(S+3$P<7AE M>&AI8FET,S$R+FAT;5!+ 0(4 Q0 ( -@S7U>U@?SY#@4 ),= ; M " 340 !A,3 Q,C R,RTQ,'%X97AH:6)I=#,R,2YH=&U02P$" M% ,4 " #8,U]7CQZ04BP% !X'0 &P @ %\%0 83$P M,3(P,C,M,3!Q>&5X:&EB:70S,C(N:'1M4$L! A0#% @ V#-?5PK>5AVM M. $ #S$4 !$ ( !X1H &-G;G@M,C R,S$P,#$N:'1M4$L! M A0#% @ V#-?5]/PQF[9$@ _-, !$ ( !O5,! &-G M;G@M,C R,S$P,#$N>'-D4$L! A0#% @ V#-?5Q55,>+/(0 L58! !4 M ( !Q68! &-G;G@M,C R,S$P,#%?8V%L+GAM;%!+ 0(4 Q0 M ( -@S7U=;9E9=H%, (#: P 5 " <>( 0!C9VYX+3(P M,C,Q,# Q7V1E9BYX;6Q02P$"% ,4 " #8,U]7SYPR1ZTG 0 46@P %0 M @ &:W $ 8V=N>"TR,#(S,3 P,5]L86(N>&UL4$L! A0#% M @ V#-?5\PSUPVGI0 .OX' !4 ( !>@0# &-G;G@M,C R C,S$P,#%?<')E+GAM;%!+!08 "@ * *X" !4J@, ! end